Fixed Desync issue for Neotanks and destroyed Pipeseams

The neotank desync was caused by 'FuelUsagePerTurn' being set to 1 instead of 0.
CP of destroyed pipeseams is basically undefined, so I removed them from the equality check for buildings. How AWBW handles them is inconsistent; in the LL games I checked, the following happens:

The turn a seam is destroyed, its CP is set to the last value of the undestroyed seam.
The turn after, its CP is set to 20 and keeps this value for the rest of the game.

However, in one of my test games (ID: 1121885), the CP is set to 20 in the turn the seam is destroyed.

Im not really happy with my solution to "fix" the pipe seam desync but when I asked in the discord why this weird behavior occurs i got no response. Adding code that sets destryoed pipe seams CP to 20 also seems kinda pointless, much easier to say CP is undefined and not check it when comparing pipe seams

(I have no clue what the established convention for push requests is; it's my first time doing this, so feel free to comment if it should be done differently.)
Press enter to login: Just a minor issue I had using the app.
Added Clock: Go7 said something about it in the stream;. With the addition of live league, it feels like a good idea to add.
While writing the clock, I noticed that:
a) old code wasn't working as intended and always jumped into the "teams exist" condition (the team of a player is an integer in e.g. live league and not null).
b) Truncate=true doesn't work. Either that or the containers overlap. UIs are not my strong suit. I am unsure whether I should just ignore it or take a prefix of the player name.


Remove transport.bio from catalina-tribes.jar.tmp.bnd

Since package org.apache.catalina.tribes.transport.bio was deprecated in tomcat 10, https://tomcat.apache.org/tomcat-9.0-doc/api/org/apache/catalina/tribes/transport/bio/package-summary.html , references to it in catalina-tribes.jar should be removed.
I've also created https://github.com/apache/tomcat/pull/625 against the main branch, so please close out this one if it's redundant.

Redundant


If nifty wallet is locked, window.ethereum.enable() doesn't popup for password

New Metamask handles this nicely, asking to enter a password, then allows user to approve sharing ethAddresses.
Nifty wallet doesn't follow the same flow.

As of 2020 Metamask does that by means of web3.eth.requestAccounts(). Nifty, on the other hand, doesn't do anything.


vectorize line intersection

Looks good to me, thanks for adding tests! I spent some time yesterday seeing if I could use batch insertion to speed up EdgeMap but it didn't really do anything and I wasn't able to do the same thing for Graph

Going forward my guess is that we should do some of the face/edge bookkeeping in the mesh class in advance so that the plane intersection code (which is called many, many times) can use a consistent representation of "edges" and which faces/vertices are associated with each edge. Note that this could be computed in advance for smpl template so it can be relatively involved to construct as long as it has a clean interface

Totally makes sense. I do think for the particular application we're focused on speeding up here we're closing in on the gains it's worth pursuing here and we should shift our attention to the side of the algorithm in the private side of the project.


DOC: Host documentation on readthedocs.io

Seems like a good place to keep documentation for various releases (pip versions, stable, dev): https://docs.readthedocs.io/en/stable/intro/import-guide.html
What do you think, @arokem?

Now available at https://pulse2percept.readthedocs.io


Revert "Automatic tab with Symfony route"

Reverts PrestaShop/ps_linklist#70

Hi @Progi1984
Could you explain why you revert this change?

It's a fail. I didn't merge and after a QA :heavy_check_mark:, @sarahdib has found a new problem. Misunderstand problem.

Maybe better to investigate on what's wrong?
Ping @jolelievre

Actually the PR shouldn't have been merged in the first place Even if there had been no problems
Because it uses a feature available in 1.7.7 only, so it would force us to release a major version of the module And previous version of PrestaShop won't be able to have the other fixes
So the idea is to first merge all bug/security fixes to release a minor/patch version
Then this update will be merged for the next major version o the module, hence the revert

Once we merge this revert we will recreate a PR with the changes (or a future major version) And I will investigate with the problem that @sarahdib found
If it all seems ok for you @PierreRambaud I let you merge this one


org-mode has modified org-highest-priority

Commit: Use `defalias' for priority aliases.

Aboving commit changed defvaralias to defalias , but lets org-fancy-priorities throw the exception:
Error during redisplay: (jit-lock-function 628) signaled (void-variable org-highest-priority)

So, I modify org-highest-priority to its source value - org-priority-highest .

@MephistoMMM I just the updated org-mode and the issue seems to be fixed. I also found this commit which seems to fix the issue. Are you sure you are on the latest version? Are you installing org mode from the correct repo? You should follow the instructions described here. Let me know if this solves your problem

you are right.
I use doom , and its develop branch pin to commit 0a8faecb7f .


feat:refine code

Make sure that:

[ ] You have read the contribution guidelines.
[ ] You submit test cases (unit or integration tests) that back your changes.
[ ] Your local test passed ./mvnw clean install -Dmaven.javadoc.skip=true.

Codecov Report

Merging #4400 (5721186) into master (85c0fb0) will decrease coverage by 0.04%.
The diff coverage is 76.19%.

@@             Coverage Diff              @@
##             master    #4400      +/-   ##
============================================
- Coverage     68.21%   68.17%   -0.04%
+ Complexity     7491     7482       -9
============================================
  Files          1020     1020
  Lines         28871    28870       -1
  Branches       2579     2577       -2
============================================
- Hits          19694    19683      -11
- Misses         7634     7643       +9
- Partials       1543     1544       +1

Impacted Files
Coverage Δ

.../client/server/consul/ShenyuConsulConfigWatch.java
85.10% <76.19%> (-0.32%)
:arrow_down:

...controller/ShenyuClientHttpRegistryController.java
63.63% <0.00%> (-18.19%)
:arrow_down:

...ruptor/RegisterClientServerDisruptorPublisher.java
55.55% <0.00%> (-11.12%)
:arrow_down:

...che/shenyu/sync/data/http/HttpSyncDataService.java
85.71% <0.00%> (-4.09%)
:arrow_down:

...henyu/admin/service/impl/UpstreamCheckService.java
66.66% <0.00%> (-1.15%)
:arrow_down:

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


NOREF Remove unused deprecated search queries

Changes and Description

Remove  deprecated queries to OpenSearch from the GQL schema

underlying resolver code left in the code base in case
This removes alerts in VScode about unreachable code

How to test this change

Verify that the code base is not impacted by removing these queries
Verify that no other references need to be removed from the code base

PR Author Review Checklist

[ ] Met the ticket's acceptance criteria, or will meet them in a subsequent PR.
[ ] Added or updated tests for backend resolvers or other functions as needed.
[ ] Added or updated client tests for new components, parent components, functions, or e2e tests as necessary.
[ ] Updated the Postman Collection if necessary.

PR Reviewer Guidelines

It's best to pull the branch locally and test it, rather than just looking at the code online!
Check that all code is adequately covered by tests - if it isn't feel free to suggest the addition of tests.
Always make comments, even if it's minor, or if you don't understand why something was done.

This ticket looks more like its BE related. Not 100% sure why the FE/me was tagged 😂 .

This ticket looks more like its BE related. Not 100% sure why the FE/me was tagged 😂 .

Thanks @garyjzhao Gary! Yeah, you are right. I'm pretty sure it's because of the graph global type being modified (because of the schema changing, even though it doesn't actually impact any implemented queries). Feel free to disregard!


prepare v0.5.11 release

This PR cherry picks PR merged on master branch to branch release-0.5.
It picked up the following pr in summary:

e2e test with kops
print version and commitId on startup
new dynamicfile backend mode
e2e test with kind

Why is 1acb533 included?

Why is 1acb533 included?

thanks @nckturner for the comments.
1acb533 is included because dynamicfile mode originally invoked two methods (validate) which belong to PR #416, this commit replaced the invocation of two methods.

/ok-to-test

For PR description, please make any changes if I've made a mistake:
73a09f0, c6a2c08, af5db65, 8684614, bdfc6d2: These commits are included to enable e2e testing on this branch.
5d89d57: Minor bugfix related to dev env file permissions.
45777aa: This feature is being cherry picked to release-0.5 to support a feature launch in EKS--some platform versions use the release-0.5 branch and we need feature support in those versions.
da8510b, bcdcb3a: Print version on startup to make debugging easier.
14e71c2: E2E test for 45777aa.
ce87d8a: Update go version used to build.
1acb533: Remove dependency of 45777aa on the SSO PR.
052daeb: Add makefile target for new e2e test.

/lgtm

/approve


Strange pixels as noise added post-registration

Hello,
When performing an affine or bspline on my image, strange, dark pixels appear throughout the image. I initially thought this made sense for bspline, as space is being warped and x,y coordinates are left without original RGB values, but I'm also seeing it for the affine?
Is there a way to prevent this? Or is there a way to collect the indices of these pixels so I can account for them myself?
Thanks!
mark

Hi,
If this is RGB images and you are using bspline interpolation for the
final resampling then you can get values outside of the valid range (do you
could have pixels with value 256 there even if input max was 255).
Is your image output type float? What is the range of the transformed
image?
Soren
On Thu, Aug 13, 2020, 22:36 markbuckup<EMAIL_ADDRESS>wrote:

Hello,
When performing an affine or bspline on my image, strange, dark pixels
appear throughout the image. I initially thought this made sense for
bspline, as space is being warped and x,y coordinates are left without
original RGB values, but I'm also seeing it for the affine?
Is there a way to prevent this? Or is there a way to collect the indices
of these pixels so I can account for them myself?
Thanks!
mark
[image: Screen Shot 2020-08-13 at 16 32 46]
https://user-images.githubusercontent.com/56090031/90184406-0efae780-dd83-11ea-85d3-2081ebc11aaa.png
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/SuperElastix/SimpleElastix/issues/388, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAHBDDLU2BHNR6H3IICQOP3SARFFTANCNFSM4P62MLHA
.

@markbuckup thanks for asking. I'm facing a similar problem
@sorenchr2011 thanks for pointing this out. Any simple solution to this issue you would recommend?
I've tried some other interpolation methods but the noises persisted.
In my case, I have greyscale image as moving image while color image as fixed image.
Looking forward to any comment. Thanks =)

I figured out that my pixel noises were generated using np.uint8(), which takes 0.0 as 255 (np.uint8(0.0)=255).
A simple solution to this issue:
rI = sitk.GetArrayFromImage(resultImage)
rI = rI*(rI>0) + (rI<=0)
Then np.uint8(rI) will be noise-free.


when clicking on a field the focus is given wrong by some frames

there is this small and fast bug, where clicking the dropdown it focuses on textFormField (maxlines: 5) for one second and focus returns to the dropdown then.
I will list the gif steps that the problem occurs.
1.click on textFormField (maxLines: 5).
2.click on textFormField.
3.click done.
4.click on the dropdown.
The moment I click the dropdown, textFormField (maxLines: 5) gains focus for 1 second, and then the focus returns to the dropdown.
I believe that by clicking on the dropdown the focus should go directly to it.
notice that the problem occurs in some frames and then focus back to the dropdown

flutter doctor -v
[✓] Flutter (Channel master, v1.10.15-pre, on Mac OS X 10.14.6 18G103, locale pt-BR)
    • Flutter version 1.10.12 at /Users/Colaborativo/Documents/flutter
    • Framework revision 0e605cc4dd (2 weeks ago), 2019-10-04 07:52:15 -0700
    • Engine revision 759d3dba25
    • Dart version 2.6.0

[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.2)
    • Android SDK at /Users/Colaborativo/Library/Android/sdk
    • Android NDK location not configured (optional; useful for native profiling
      support)
    • Platform android-29, build-tools 29.0.2
    • Java binary at: /Applications/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_202-release-1483-b49-5587405)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 11.0)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 11.0, Build version 11A420a
    • CocoaPods version 1.7.5

[✓] Android Studio (version 3.5)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 40.0.2
    • Dart plugin version 191.8423
    • Java version OpenJDK Runtime Environment (build
      1.8.0_202-release-1483-b49-5587405)

EXAMPLE CODE
import 'package:flutter/material.dart';

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  // This widget is the root of your application.
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: MyHomePage(),
    );
  }
}

class MyHomePage extends StatefulWidget {
  @override
  _MyHomePageState createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {

  String _valueToDropDown;

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(title: Text("test"),),
      backgroundColor: Colors.white,
      body: ListView(
        padding: EdgeInsets.all(30),
        shrinkWrap: true,
        children: <Widget>[
          TextFormField(
            maxLines: 5,
            decoration: InputDecoration(
              labelText:"Input Area",
              border: UnderlineInputBorder()
            ),
          ),
          SizedBox(height: 25,),
          TextFormField(
            decoration: InputDecoration(
                labelText:"Input Text",
                border: UnderlineInputBorder()
            ),
          ),
          SizedBox(height: 25,),
          DropdownButton<String>(
            hint: Text(_valueToDropDown ?? "Select"),
            items: <String>['A', 'B', 'C', 'D'].map((String value) {
              return new DropdownMenuItem<String>(
                value: value,
                child: new Text(value),
              );
            }).toList(),
            onChanged: (val) {
              setState((){
                _valueToDropDown = val;
             });
            },
          )
        ],
      ),
    );
  }
}

@gspencergoog
the mistake I mentioned in pull #42811

Thanks @Joao-b4!

Hi @Joao-b4
Not able to reproduce this issue on latest dev

flutter doctor -v
[✓] Flutter (Channel dev, v1.18.0-dev.5.0, on Mac OS X 10.15.4 19E287, locale
    en-GB)
    • Flutter version 1.18.0-dev.5.0 at /Users/taha/Code/flutter_dev
    • Framework revision 7f56b53de4 (9 days ago), 2020-04-12 12:00:01 -0400
    • Engine revision beb8a7ec48
    • Dart version 2.8.0 (build 2.8.0-dev.20.0 89b0f67261)

[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
    • Android SDK at /Users/taha/Code/sdk
    • Platform android-29, build-tools 29.0.3
    • ANDROID_HOME = /Users/taha/Code/sdk
    • Java binary at: /Applications/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_212-release-1586-b4-5784211)
    • All Android licenses accepted.
[✓] Xcode - develop for iOS and macOS (Xcode 11.4.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 11.4.1, Build version 11E503a
    • CocoaPods version 1.9.1
[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome
[✓] Android Studio (version 3.6)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 45.1.1
    • Dart plugin version 192.7761
    • Java version OpenJDK Runtime Environment (build
      1.8.0_212-release-1586-b4-5784211)
[✓] VS Code (version 1.44.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.9.1
[✓] Connected device (4 available)
    • SM M305F   • 32003c30dc19668f • android-arm64  • Android 10 (API 29)
    • macOS      • macOS            • darwin-x64     • Mac OS X 10.15.4 19E287
    • Chrome     • chrome           • web-javascript • Google Chrome
      81.0.4044.113
    • Web Server • web-server       • web-javascript • Flutter Tools
• No issues found!
taha@MacBook-Pro ~ % flutterd doctor -v
[✓] Flutter (Channel dev, v1.18.0-dev.5.0, on Mac OS X 10.15.4 19E287, locale
    en-GB)
    • Flutter version 1.18.0-dev.5.0 at /Users/taha/Code/flutter_dev
    • Framework revision 7f56b53de4 (9 days ago), 2020-04-12 12:00:01 -0400
    • Engine revision beb8a7ec48
    • Dart version 2.8.0 (build 2.8.0-dev.20.0 89b0f67261)

[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
    • Android SDK at /Users/taha/Code/sdk
    • Platform android-29, build-tools 29.0.3
    • ANDROID_HOME = /Users/taha/Code/sdk
    • Java binary at: /Applications/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_212-release-1586-b4-5784211)
    • All Android licenses accepted.
[✓] Xcode - develop for iOS and macOS (Xcode 11.4.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 11.4.1, Build version 11E503a
    • CocoaPods version 1.9.1
[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome
[✓] Android Studio (version 3.6)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 45.1.1
    • Dart plugin version 192.7761
    • Java version OpenJDK Runtime Environment (build
      1.8.0_212-release-1586-b4-5784211)
[✓] VS Code (version 1.44.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.9.1
[✓] Connected device (5 available)
    • SM M305F   • 32003c30dc19668f                     • android-arm64  •
      Android 10 (API 29)
    • iPhone 11  • 41EB2A85-7EB4-4FD2-8978-FBBE2A681D74 • ios            •
      com.apple.CoreSimulator.SimRuntime.iOS-13-4 (simulator)
    • macOS      • macOS                                • darwin-x64     • Mac
      OS X 10.15.4 19E287
    • Chrome     • chrome                               • web-javascript •
      Google Chrome 81.0.4044.113
    • Web Server • web-server                           • web-javascript •
      Flutter Tools
• No issues found!

if you're still experiencing this problem, please create a new issue and provide the information
required in the template.
Thank you

I want to known about that solution.Please

@WilliamDavid97
if you're still experiencing this problem, please create a new issue and provide the information
required in the template.
Thank you


W-8033900: Updated Readme to add security information.

I added some security information to the Readme based on material provided by Yassir Elley and Austin Siford.  Please review and merge.

Created a new request with signed commit.


[Catalog] Small-sized video displayed

Description
Only a thumbnail of the video displays.
Expected Behavior
Full-sized video should display.
Screenshots

Enviroment:

Browser: Safari

Contributor Resources
The meshery.io website uses Jekyll and GitHub Pages. Site content is found under the master branch.

See the Contributing to Meshery.io Website section of the readme.md and other contributing instructions, too.
See Meshery site designs in this Figma designfile. Fill-in the Layer5 Community Member Form and join the Layer5 Community Slack for access.

Safari specific

i would like to try this

Go ahead @manikmmalhotra. Before you start looking into this though, do have access to safari?

yea i've access to safari


chore(deps): upgrade runtime dependencies

Upgrades project dependencies. See details in workflow run.

Automatically created by projen via the "upgrade-runtime-dependencies-2.x" workflow

⚪ Backport skipped
The pull request was not backported as there were no branches to backport to. If this is a mistake, please apply the desired version labels or run the backport tool manually.
Manual backport
To create the backport manually run:
backport --pr 2763

Questions ?
Please refer to the Backport tool documentation


[Feature] Substep rendering

Support an option to render at different frequencies. If render mode is human, then we internally call the render_human function at the appropriate frequency. Otherwise we accumulate render image data and render() returns shape (num_renders, batch, H, W, 3)

closed by #724


[WIP][SPARK-1486][MLlib] Multi Model Training with Gradient Descent

Note: This is still a work in progress
This is the first of the pull requests to support multi-model training in MLlib. It batches examples and trains multiple models with different regularization parameters and step sizes all at once using Matrix-Matrix multiplication. It uses Native BLAS when the data matrix is dense, and uses sparse matrices as much as possible for both better memory utilization and performance (I will post performance results in the comments).
This is a HUGE Pull Request, therefore I'm posting this now. It is not finished, docs need to be updated, code can be somewhat cleaned up for ease of understanding. I'm posting this now so that users can comment and make suggestions along the way.
Most of the PR consists of adding additional Local Matrix operations for the calculation of gradients and losses.

closing this PR as a lot of functionality has changed


DocsArchive-<IP_ADDRESS>Auto archive content

Please don't merge this PR until target archive repo PR https://github.com/OPS-E2E-PPE/docs-archive-test-source-version-target/pull/182 is merged into live branch.
Auto archive content to https://github.com/opstest2/docs-archive-test-source-version-target.git

Docs Build status updates of commit 69ea1bd:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

.openpublishing.redirection.json
:white_check_mark:Succeeded

versioningArchiveSourceFolder/TOC.yml
:white_check_mark:Succeeded
View (sql-server-2014 || azuresqldb-current || azuresqldb-mi-current || azure-sqldw-latest || >= aps-pdw-2016 || >= sql-server-2016 || >= sql-server-linux-2017 || sql-server-previousversions || sqlallproducts-allversions)

versioningArchiveSourceFolder/docfx.json
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


Support for variable names in Transformations specification

I'd like to be able to use this as the transformation:
$(app.config.secureFilePath) => MyApplication.exe.config
But no variable substitution happens and it takes the secureFilePath as a literal string.
Maybe you could use a technique like this to expand the variables?

Hi @IanMercer,
Variable substition is done by the agent before calling the task. I just did the following tests:

use an existing variable $(existing.var) => web.config =>OK
use an unknown variable $(unknow.var) => web.config => no substitution, $(unknow.var) is pass as is

Can you verify that you have define the variable app.config.secureFilePath and that there is no typo?


In addition to ZSTD, the following issues prevent us from allowing running unit tests on Windows:

The os.OpenFile miss a flag on Windows platform, make the behavior of delete an opened file different with POSIX environment. (See https://github.com/golang/go/issues/32088)
ResourceManager and blobGCHandler doesn't close and free resources after DB.Close, so some test case will meet The process cannot access the file because it is being used by another process, The requested operation cannot be performed on a file with a user-mapped section open when reopen DB
DirectWriter.Finish try to truncate the file to actual size, but Windows doesn't allow doing this on an O_DIRECT file, the returned error is truncate: The parameter is incorrect. Fortunately, this is easy to fix, we can open this file in normal mode and do truncate. (See https://docs.microsoft.com/zh-cn/windows/win32/fileio/file-buffering#alignment-and-file-access-requirements)
We should use path/filepath instead of path to work on file's path.
Seems there are some memory-leak in some test case. I have got OOM on my laptop.

BTW, it seems like some work will terminate when a filesystem error occurred, but these workers will never start again and the database becomes unavailable.


v3 branch is not pointing to latest v3 release

The v3 ref is pointing to v3.3.1 rather than the latest v3.4.0 release, so running this workflow against the v3 ref still yields node12 deprecation warning:

Could someone update the v3 branch to include @mattrothenberg's changes in #86?
I should note that the example in the docs uses v3: https://github.com/githubocto/flat#option-2-manually-create-a-github-actions-workflow-yml-file
Thanks in advance! Big fan of this tool 🙂

cc @idan @jaked

@idan @jaked @mattrothenberg really sorry for the nudge (as an OSS maintainer myself I hate when people do this) but it should only take a few seconds to point the v3 branch to https://github.com/githubocto/flat/commit/cea5ee43fce40ef71501bf5724a00d45db11641d — could someone help out here?


Bug: Protobuf incompatible issue

PyMechanical does not have upper limit on probuf which creates issue in python3.9 where 5.26.1 is getting installed hence creating issue when installing other dependencies such as ansys-api-mechanical and ansys-api-platform-instancemanagement

For some reason, the dependency resolution on 3.9 seems to be failing... It should detect that second level deps are defining upper limits on the protobuf version but it isn't... you have to actively specify it when installing ansys-mechanical-core
pip install ansys-mechanical-core "protobuf<5"


Add timeout named argument to 'Socket.connect', etc.

This issue was originally filed by<EMAIL_ADDRESS>
What steps will reproduce the problem?
import 'dart:io';
main() {
  var client = new HttpClient();

  client.getUrl(Uri.parse('http://<IP_ADDRESS>')) // host without response
  .timeout(const Duration(seconds: 5))
  .then((HttpClientRequest request) {
    print("hell no.");
  })
  .catchError((e) => print(e.toString()))
  .whenComplete(() => client.close(force: true));
}
What is the expected output? What do you see instead?

expected: 5 seconds, TimeoutException, exit
instead: 5 seconds, TimeoutException, 2 minutes, exit

What version of the product are you using? On what operating system?

64 bit linux (Ubuntu)

@zanderso : this just came up on gitter.
What's your opinion?
We could wrap all futures that are returned by socket operations and back-propagate the timeout, but that feels expensive. It would provide one of the nicest APIs' though.
Alternatively, we could add named timeout arguments to the relevant functions.
Another approach would be to set the timeout time globally. That would make unit-testing easier/faster.
Finally, we could have a method that actively cancels any running operation.=

@floitschG
it would be nice if timeout could be differentiated by send/recv timeout via setsockopt or similar method
here is what python does
some high level functions expose socket via instance._get_socket()
then you use socket.settimeout(n) for that socket
also relevant functions have timeout param. i.e.
https://docs.python.org/3/library/http.client.html
https://docs.python.org/2/library/smtplib.html
similar stuff is in golang, with Conn interface with dial timeout and deadlines
https://golang.org/pkg/net/
as i see from docs dart's setsockopt is very limiting

Taking a brief look, I think the approach we should consider is wiring up sendTimeout and recvTimeout named arguments to connect (on Socket) and bind (on ServerSocket for sockets we get back from accept) to setsockopt with SO_RCVTIMEO and SO_SNDTIMEO.
If there's demand for it going forward, we can consider providing a more general API for accessing socket options.

Would it maybe just make more sense to add a SocketOptions class and have connect and bind consume that? That way we won't have to change the interface for Socket and ServerSocket if we do eventually decide to allow for additional configuration options.

@bkonyi sgtm.
@floitschG Thoughts about @bkonyi's suggestion?

Normally, named arguments scale quite nicely. What would be the advantage of having a SocketOptions class?

Is there any plan to add a "socket timeout" (a timeout associated with send/recv), instead of just the connect timeout?

At this point, I don't think so. It's probably worth filing a feature request for though.


Update secret-scanning partner onboarding to add more 'gotcha' information for signature validation

Why:

We received partner feedback that they encountered difficulty implementing signature validation because it wasn't clear that the raw payload needed to be used.
They use IBM Cloud Functions Actions which by default parse JSON request payloads.
So when they would stringify the JSON again and find signature validation was failing, it wasn't clear that the issue was stringifying the JSON again rearranged key/value members and changed spacing.
What's being changed:

This change updates:

the sample JSON payloads to have no spaces, like production
the URL for getting the public key in the samples which was pointing to the old endpoint token_scanning
the first token sample to only include a token, not X-Header-Banner as well which wouldn't be included in a payload

Check off the following:

[x] I have reviewed my changes in staging. (look for the deploy-to-heroku link in your pull request, then click View deployment)
[x] For content changes, I have reviewed the localization checklist
[x] For content changes, I have reviewed the Content style guide for GitHub Docs.

Writer impact (This section is for GitHub staff members only):

[ ] This pull request impacts the contribution experience

[ ] I have added the 'writer impact' label
[ ] I have added a description and/or a video demo of the changes below (eg. a "before and after video")

@just-joshing Thanks so much for opening a PR! I'll get this triaged for review ⚡


Generation script improvements

I took some time today to do the changes requested to the script so that the next solver/preconditioner/matrix addition to Ginkgo are hopefully much faster. For that, I added some new fancy things:

Comment out all imported code, add NOT_IMPLEMENTED and TODO items
Automatically add the generated files to all the CMakeLists (keep everything sorted)
Automatically add all the required lines to common_kernels.inc.cpp for the new solver/preconditioner/matrix. Thanks to this, the code should compile without having to do anything.
I added a switch to the script to disable the automatic modifications so that it's possible to do everything by hand similarly to before if there is some sort of problem.

I would like some feedback, in particular for mac users @hartwiganzt because maybe some commands are missing or without some particular arguments.
Closes #25

@hartwiganzt I do not understand. You mean that it does not add to files such as gpu/test/solver/CMakeLists.txt the new solver? It's supposed to do that, at least that parts works on my computer.

please try when adding a new matrix format, whether in /gpu/test/matrix/CMakeLists.txt te format is added. It is not for me.

Hm, interesting, even when adding a new matrix format it works for me.
Can you add at the beginning of the script (under the first line) set -xv and give me the full output when you run the script?

It messed up ../../core/CMakeLists.txt for me - not for you?

My bad, there was a subscript problem with the new version. What about now?

I updated it again. The error message for the awk is very cryptic so it's hard to guess. Maybe this new version works better.

@hartwiganzt everything should work now. Thanks a lot for your test, it looks like the GPU kernels for CSR (csr_kernels.cu) used }; to close function definitions instead of simple }, which made the script not work properly. I fixed the CSR definitions to make it work.
I also realised there was a problem with GPU kernel files which can have either .cpp or .cu extension. I have fixed this by adding some detection in the script.

Works fine now. Thanks!
Only, there is still the bug in the cgs kernel tester. Does it need to be rebased? It says:
"This branch has no conflicts with the base branch"
I am confused.

Well, if you can merge this pull request, we are fine. I then just discard my branch... but sure, you can look into it.

Did  you look into it? If so, this can be merged - I'm fine with having only 1 review on stuff that is not part of the library itself, but a utility tool.


Users managment

Adding for the new users are made in easy way.

There is no option to make add users with users details, like emails, notifications and etc, but it can be made after  from user logon (Personal button). What about admin, why these options are absent?

Also, where is no bulk users import/group changing/deleting

Sorry, this is the bug tracker for the owncloud.org website, not for any part of ownCloud. Please, see the repositories on https://github.com/owncloud and file feature requests in the right one.
I also suggest to try and describe your features more clearly. Features are only added if there is a clear use case - an example of a scenario where a feature is actually helpful, showing how currently something can not or only be done in a complex way but with the feature would be easily possible.
This feature probably belongs in owncloud/core.
For more complex user management most ownCloud users use LDAP, which has the featuares you describe under point two.
As to point 1, I don't see why an admin should be able to make these changes - it might be nice, but not important at all. A patch would perhaps be welcome if you feel like making this possible, but I can imagine that it is considered a unneeded feature. Can you describe a scenario where an admin MUST change these things, rather than the user? And where the admin can not, because it is a rare situation, work around it by logging in as the user for example?


Import specific subskills

In a naive multi skill setup, all training data / domains of subdirectories get imported and are used for the training of the bot.
multi\ domain\ example
├── Bot\ A
│   ├── config.yml
│   ├── data
│   └── domain.yml
├── Bot\ B
│   ├── Bot\ B1
│   │   ├── config.yml
│   │   ├── data
│   │   └── domain.yml
│   ├── config.yml
│   ├── data
│   └── domain.yml
├── config.yml
├── data
└── domain.yml

As part of this issue, we want to add the capability to use only certain subdirectories / sub bots (e.g. only include Bot A and Bot B1).
Where to specify the imports:

domain file -> access and loading wise that's the better option
config file

Hi , I was trying to find some documentation on how to get this working , i could not find anything in the new rasa 1.0 docs but i stumbled across a document explaining this on the master branch https://github.com/RasaHQ/rasa/blob/master/docs/multi-skill-assistants.rst  is this ready to be used ? if yes could you point me to some code sample on how to use it via python. And this would not be supported via HTTP API to train right ?

@saikiran2603 That's currently a highly experimental feature and very likely changes in the future (so please don't use it in an important / longterm project). However, if you want to give it a shot, checkout the docs you found and this example: https://github.com/RasaHQ/rasa/tree/master/data/test_multi_domain . Happy to hear your feedback 🎉

Thanks for the link :) i am trying it out ! will get back on this !


high memory utilization, crashes, in large openshift clusters

What did you do to encounter the bug?
Steps to reproduce the behavior:

create 2k projects
install operator

What did you expect?
the operator will run without issue
What happened instead?
The operator pod continuously hit its memory limit and crashed. We increase the limit until it would run, eventually settling around 1.8gb. The operator was also slower to react to secret events.
Screenshots

Operator Information

0.6.1

Kubernetes Cluster Information

Openshift
4.9.8

Additional context
given that every new project creates 9 secrets by default, the amount of cached objects (some of them large in size) gets out of hand, e.g. 18k+ secrets.

Hi-
Thanks for reporting this issue.
We are investigating and will update.
Could you share you scenario for needing to create 2000 Atlas Projects?

Hi- Thanks for reporting this issue. We are investigating and will update.
Could you share you scenario for needing to create 2000 Atlas Projects?

Thanks! Apologies for the use of the word "project" here... may cause some confusion. I was actually referring to openshift projects, which are the equivalent of namespaces. I've changed the issue description to avoid confusion.


New issue, No such host

Get "https://weeb.hanime.tv/weeb-api-cache/api/v8/m3u8s/58974": dial tcp: lookup weeb.hanime.tv: no such host
Get this every time I try hanime get https://hanime.tv/videos/hentai/ishuzoku-reviewers-8 + more -o \\nas
Good luck man

Same as in #7. 1.0.5 fixes the issue, but 1080p video downloads are no longer possible.

I did update it, to the new version, do i need to specify 720p videos?

Okay, need to specify the 720

Nope, still doesnt work

You don't need to, every video is now downloaded in 720p by default instead of 1080p. Are you sure you are using the latest version?

1.0.5?

let me double check its executing the right file

Nope, still not working, they did just release that episode though

Still the same issue?

Then you are still using an older version than 1.0.5. Try hanime -v.


refactor full node calls to use ES

need to refactor account_history and account_history_pager and any other call connecting to the full node for elasticsearch public wrapper calls located at: http://<IP_ADDRESS>:5000/get_account_history?from=0&size=10&sort_by=-block_data.block_time&from_date=2017-09-01&to_date=now
this will allow to release @xeroc full node.

this has been done and the full node released.


backup permission

hi, i run my docker with user: docker. and everythink works ...
but with your backup procedure, it throws an premission issue because it use root-previleges.
i got that issue:
→ Backup Service

Compressing volumes
- gitea-data-vol-1 ✔
- gitea-db-vol-1 ✔
mkdir: cannot create directory ‘/www/dockerbunker/data/backup/gitea/20191103_1445/ssl’: Permission denied

in my case within dockerbunker/data/backup/gitea/
drwxr-xr-x 2 root   root   4096 Nov  3 14:47 20191103_1445

Please delete already created backup directories or run chown -R youruser:yourgroup on data/backup and then re-try the backup.


Support for Confluent Cloud

Feature description (Mandatory)
Place clear gudiance in the docs on how to connect to confluent cloud.
Considered alternatives
The connector already supports this.  Because it uses the kafka java driver under the covers, you just use a different set of config parameters.  This isn't documented and so users will trip if the docs aren't there, because how we suggest to connect to kafka is different from, and won't work with cloud.
Here is a working config that will work with the code today, and connect to confluent cloud:
When you generate a cloud cluster, you get 3 values:

API-ENDPOINT
API-KEY
API-SECRET

Look for those values in this config, substitute, and it works.
      NEO4J_kafka_ssl_endpoint_identification_algorithm: https
      NEO4J_kafka_sasl_mechanism: PLAIN
      NEO4J_kafka_request_timeout_ms: 20000
      NEO4J_kafka_bootstrap_servers: API-ENDPOINT
      NEO4J_kafka_retry_backoff_ms: 500
      NEO4J_kafka_sasl_jaas_config: org.apache.kafka.common.security.plain.PlainLoginModule required username="API-KEY" password="API-SECRET";
      NEO4J_kafka_security_protocol: SASL_SSL

Rolling this together with #192
Will be adding commits and a PR to documentation.

Closed by https://github.com/neo4j-contrib/neo4j-streams/pull/215


Page permalinks

Site permalinks lead to 404 page
Needs to be modified probably in YAML of pages, and in data/navigation.yml

Solved this issue by adding include: /docs in _config.yml


nnn: add desktop file, fix nerd icons, add option to build with emojis

Description of changes
resolves https://github.com/NixOS/nixpkgs/issues/230466
Adding a desktop file, fixing nerd icons that broke with: https://github.com/NixOS/nixpkgs/pull/229817, and adding support to build with emojis

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

[x] Fits CONTRIBUTING.md.

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/prs-ready-for-review/3032/2206


Upgrading Jackson, Guice, Guava and jsonassert

Fixes Issue

[ ] Which issue or ticket was(will be) fixed in this PR?
partially fixes #607
resolves #642

PR Branch
#ADD LINK TO THE PR BRANCH
Motivation and Context
Notable changes include

adding null checks to JsonNodes because recent Jackson versions deserialize null values to Java null instead of Jackson NullNode
Moving from javax.inject to jakarta.inject with latest Guice version

Checklist:

[ ] Unit tests added

[ ] Integration tests added

[ ] Test names are meaningful

[ ] Feature manually tested

[ ] Branch build passed

[ ] No 'package.*' in the imports

[ ] Relevant Wiki page updated with clear instruction for the end user

[ ] Not applicable. This was only a refactor change, no functional or behaviour changes were introduced

[ ] Http test added to http-testing module(if applicable) ?

[ ] Not applicable. The changes did not affect HTTP automation flow

[ ] Kafka test added to kafka-testing module(if applicable) ?

[ ] Not applicable. The changes did not affect Kafka automation flow

@authorjapps  Can you review this? There are a lot of small changes with this upgrade

@a1shadows With https://github.com/authorjapps/zerocode/pull/638 junit was upgraded from 4.12 to 4.13.2. This recent PR https://github.com/authorjapps/zerocode/pull/641 contains a downgrade to 4.12 again. Would you please change that?

@a1shadows With #638 junit was upgraded from 4.12 to 4.13.2. This recent PR #641 contains a downgrade to 4.12 again. Would you please change that?

@baulea Done


LittleSpringGeme

The Player must go Home and can move Boxes
Your checklist for this pull request
Author name
Author: Jonas Heilig

About your game
What is your game about?
The Player must go Home and can move Boxes
How do you play your game?
Press WASD to move, Press J to reset. You must move to the House
You must destroy the rocks with k to finish the level.

Code
Check off the items that are true.

[x] The game was made using the Sprig editor.
[x] The game is placed in the in the /games directory.
[x] The code is significantly different from all other games in the Sprig gallery (except for games labeled "demo").
[x] The game runs without errors.
[x] The name of the file/game contains only alphanumeric characters, -s, or _s.
[x] The game name is not the same as the others from gallery

Image (If an image is used)

[x] The image is in the /games/img directory.
[x] The name of the image matches the name of your file.

Thanks for your PR!

Add tow new Mechanics.
Destroiable Rocks and Boxes that only can moved by Cats

Should I add something else?

Should I add something else?

Looking at it now, sec...

Gratz!  If you're a teenager, and you haven't already received one, please feel free to fill out this form to receive a Sprig device grant of your very own!  Additionally, feel free to join Hack Club's Slack and share your creation in the #sprig channel!


audit: only flag if checksum changes when full url and version stay the same

[x] Have you followed the guidelines in our Contributing document?
[x] Have you checked to ensure there aren't other open Pull Requests for the same change?
[x] Have you added an explanation of what your changes do and why you'd like us to include them?
[x] Have you written new tests for your changes? Here's an example.

[x] Have you successfully run brew tests with your changes locally?
[x] Have you successfully run brew man locally and committed any changes?

This changes the audit to only warn if the url stays the same but the checksum changes. Previously, the audit would trigger if the version is the same but the checksum changed, which may be too restrictive since it's not unexpected for the checksum to change if a different URL is being used. Previous discussion: #9071.

Thanks @dtrodrigues!


Xcode 11 SPM Support/Release

Hello! Now that the Xcode 11 GM is out, we're attempting to migrate from Cocoapods -> SwiftPM.
It looks like Package.swift is already on master, but there hasn't been a release that includes that commit yet.
For now, simply switching SPM to "master" resolves the issue, but would you guys be interested in pushing out a release soon that officially supports SPM?

Hey @RamblinWreck77, thanks for the heads up! The team is working on cutting a new release.

How's it going with the release?  This is one of our last dependencies for our SPM conversion.

@RamblinWreck77 Did you manage to get it working with SPM from master? We get import errors when compiling.

@Petteri78 I haven't tried master, though just looking at it I'm blown away that it has over a year of active development past the latest release. I usually shy away from using master since I don't want some stray commit causing instability and clear cut releases make testing easier, but if this is how they're doing things I might reconsider.
If they don't want to periodically cut releases once a quarter or so why bother supporting this (awesome) library in the first place?

I think the new IGListDiffKit change also needs to be added to SPM

@danqing good call-out, this is something we'll need to make sure SPM can handle the changes with splitting IGListKit and IGListDiffKit

Now that 4.0 is out, can this be revisited? I had a crack at setting up the Package.swift but it was out of my depth.

@nick-potts  Totally, we would prioritize to fix the SPM integration here, thanks for raising this!

Any News?

The issue appears to be that the package.swift file doesn't include any dependency references. From my limited research on Swift PM I believe the package.swift file should include a dependency section that lists IGListDiffKit as a dependency and then make that framework also support Swift PM. Not sure if that would really fix it, but it seems like the right first step/direction.
https://swift.org/package-manager/#importing-dependencies

All that is needed to be done is to update the import declarations in some files. it's not that hard and I've already done it (contribute to) a few frameworks with C/C++ dependencies.

Any news/progress?

I have this draft SPM setting code WIP: https://github.com/lorixx/IGListKit/commit/81c90aee5c064bb57a72adf69e8cf4467b5f5244
However, I hit a road blocker for the "Internal header file not found error" error, ugrrr really hate Xcode project settings and I have no idea how to proceed here. If anyone want to continue to explore, feel free to take my draft code and send a PR!

@lorixx please see #1465,  it took me some time to workaround bunch of limitations of SPM but I was able to make it work.

Super exciting work @3a4oT, hope this ships soon!

thanks, @RamblinWreck77, I think there is some workable solution now. Will appreciate any feedback from a real user :)

any updates on this?


Move to webjars

Hi @jamesward ,
now I am the cuplrit.... sorry for the delay.
Looks good to me.
Personally, I would prefer, if the artifact name would be "webjars-webfilter-resolver" - the only reason being to reduce the chance of artifact name clashes, since "webfilter-resolver" sounds somewhat generic.
However, if you feel that the chance is low enough - we can leave it at "webfilter-resolver".
Cheers
David

Since it has the org.webjars groupId we should be good.

Oh, but it looks like our convention is to prefix with webjars- so I'll switch that back.

I've released 0.1.1 to Maven Central.  Thanks for your help!

Perfect - and it makes perfect sense since the group id is not part of the artifact name.
Well done, no problem!


Correct order of table creation

Because of FKs ... need to create tables in order

Anyone here?

Someone with write access will need to merge this.

@bjones86 I think you have write access, can you merge this?

Thank you.

Not a problem. I think I've given you an invite to have 'write' access to this repo, seeing as you're effectively the authority on this tool.


added typewriter-effect using vanilla js

Related Issue

Typewriter effect using vanilla js
Closes: #282

Describe the changes you've made
I've added 3 files.
1.typewriter.html - HTML code for the project.  public/typewriter.html
2.typewriter.css - CSS code for the project.   assets/css/typewriter.css
3.typewriter.js - Javascript code for the project. assets/js/typewriter.js
Added two methods to achieve the typewriter effect!
Describe if there is any unusual behaviour of your code(Write NA if there isn't)
NA
Checklist:

[x] My code follows the style guidelines of this project.
[x] I have performed a self-review of my own code.
[x] I have commented my code, particularly in hard-to-understand areas.
[x] I have made corresponding changes to the documentation.
[x] New and existing unit tests pass locally with my changes.

Screenshots

Added gif and project details to script.js

Added gif and project details to script.js @urvashi-code1255

@SanskaarPatni Please Resolve the conflict and squash commit.
Let me know if you need any help.

I was trying to squash commits but in the end always ran into some problem.
I've opened a new pr- added typewriter effect #680
Kindly merge that one. By your permission I'll close this pull request.
@Vishal-raj-1 @urvashi-code1255


merging 2.11.x/2.11.x-jdk8 onto 2.12.x

test run: https://scala-ci.typesafe.com/view/scala-2.12.x/job/scala-2.12.x-integrate-community-build/366/consoleFull

only failures were known/existing ones


Add ability to inject volume mounts to conjur-access-token

Update the sidecar injector to enable injecting a volume mount to the conjur-access-token into the container definition of specified containers.
Context
The sidecar injector when used to inject the authenticator will create the conjur-access-token volume and inject the authenticator sidecar. If you want your application container to create a mount to the conjur-access-token volume:
volumeMounts:
  - mountPath: /run/conjur
    name: conjur-access-token

then you have to create a volume mount on that container to a volume that doesn't exist at the time you invoke kubectl apply -f ... This can have mixed results depending on when validation of the pod spec takes place.
A better approach is to introduce an annotation option to the sidecar-injector that allows the sidecar-injector to automatically add these volume mounts to containers whose names you specify. Perhaps sidecar-injector.cyberark.com/conjurTokenReceivers, which would take a comma separated list of container names.

Here's the suggestion for this will be implemented. There'll be a new configuration option identified by the annotation key sidecar-injector.cyberark.com/conjurTokenReceivers. It'll take a comma separated string value containing the list of containers that should get the conjur-access-token volume mount injected.
e.g.
sidecar-injector.cyberark.com/conjurTokenReceivers: "app-container-1, app-container-2"

Re: Implementation, we will need to
0. Retrieve and parse the annotation above to create a slice of the container names that will received the volume mounts.

Create a method for returning the required patch operations for adding volume mounts. This will be similar to the function for adding volumes  https://github.com/cyberark/sidecar-injector/blob/master/pkg/inject/patch.go#L56
Use (1) to only add the conjur-access-token volume mount to the containers.

annotation key sidecar-injector.cyberark.com/conjurTokenReceivers

I'd propose something a bit less redundant and conforming to k8s ones:
cyberark.com/conjur-token-receivers
Other than that, from the cursory look the rest seems fine but I don't know enough about the injector nor the context here to be a reliable reviewer 🤷 .

This proposal certainly looks reasonable to me.
For the purposes of brainstorming, how about this as an alternative. I'm not totally certain this would work, and it's probably no better than what you've proposed, but what the heck:

Use a Kubernetes secret to pass the token instead of a volume
For initial deployment, create an initial Kubernetes secret with a blank/null token (might need a validity flag in the data to indicate valid secret?)
For containers that will need the token, include a volume mount to that secret
When the sidecar is injected, update the token secret with the actual token via mutating admission webhook.
Containers that volume mounted this secret will automatically see an updated token in their file systems after the secret update.

@diverdane The authenticator sidecar model has one authenticator per pod. Using a secret would mean as many secrets as there are pods (I think). The authenticator sidecar would need to be able to write to this secret. I'm also not sure how fast a change to a secret propagates to volume mount sin currently running containers (if at all).
If you were concerned about the security implications of using a volume it's worth noting that the volume that holds the access token is uses the in memory storage medium and is only shared between containers in the Pod.

@sgnn7 I hear ya, however the choice of name style has to be consistent with the other parameters.

@doodlesbykumbi thanks for the clarifications, that makes sense! My intent with making this suggestion was possible simplification of the mutation process if possible (it wasn't for security concerns). It hadn't occurred to me that the authenticator sidecar would need to write this volume... but yeah, that makes total sense. This would be way too complicated for the sidecar to update a secret; that would require an integrated kubernetes client.
What you're proposing LGTM, thanks!

@doodlesbykumbi what are the other parameters that we're trying to stay consistent with?

All the parameters listed here https://github.com/cyberark/sidecar-injector/blob/master/README.md#configuration


[FEATURE] Being able to use variable argument in listen variable

Description of the requested feature
Being able to use variable inside listen definition.
Proposed configuration syntax
(defvar monitor "eDP-1")
(deflisten workspaces           :initial "[]"   "scripts/workspaces.sh ${monitor}")

for example I would love this listener depend to another variable to easily change the monitor as I wish. I know I can do some workaround my scripts not related to yuck to make it works but i think it could be a nice feature to have.
Additional context
No response

That indeed would be nice. I think the reason this feature has not been implemented yet is it's kinda confusing sometimes. Like, what if in your example the value of monitor changes. Can't really change the value of the argument, so should we rerun the script or just left it as is? What if script is expected to be run exactly once, it would break then? It gets more confusing with defpoll and defvar. I suppose something like that is also why we can't use variables in defwindow

Can't you just use the get sub-command, something like:
(defvar monitor "eDP-1")
(deflisten workspaces           :initial "[]"   "scripts/workspaces.sh $(${EWW_CMD} get monitor)")

I don't think this'll update on the fly if you want it to you could move the eww get monitor command inside your scripts/workspaces.sh

@Hiraeth4171 It won't work because you can't reference any variables inside of deflisten. So EWW_CMD can't actually be used here as well as any other variable. I think being able to do that is what the op meant by requesting this feature.


DON'T MERGE TESTING IF THIS SOLVES INTEGRATION TESTS ISSUE Revert "[Issue 4956]Add default loader for latest pyyaml"

Reverts apache/pulsar#4974

rerun integration tests

rerun integration tests


proposal: support the zero-copy of file-to-unix-socket and tcp-socket-to-unix-socket

Background
For the most commonly used stream-oriented file descriptor types that can benefit the most from Linux zero-copy tech: TCP socket, Unix domain socket, and regular file, Go currently supports these cases of zero-copy:

From TCP socket to TCP socket
From Unix socket to TCP socket
From file to TCP socket
From TCP socket to file
From Unix socket to file
From file to file
from which the zero-copy supports whose destinations are Unix domain sockets are missing.

Since io.Copy(dst Writer, src Reader) leverages the src.(WriterTo).WriteTo or dst.(ReaderFrom).ReadFrom to try zero-copy for data transfer internally, and net.UnixConn has already implemented net.PacketConn that has WriteTo and ReadFrom methods with different function signatures, which means there is no way for us to achieve the zero-copy by implementing these two methods for net.UnixConn, thus, the zero-copy case unix-socket-to-unix-socket is off the table.
Proposal
As mentioned above, unix-socket-to-unix-socket is unlikely to accomplish, fortunately we can still support zero-copy of tcp-socket-to-unix-socket and file-to-unix-socket, therefore, I propose supporting zero-copy with destinations of Unix sockets by implementing io.WriterTo interface for os.File and net.TCPConn.
Once the implementation of this proposal is done, it will make the zero-copy technique support in Go more complete.
API changes
There will be one new method for net.TCPConn and os.File: WriteTo(io.Writer).
Benefit
Performance improvement

Benchmarks

goos: linux
goarch: amd64
pkg: net
cpu: DO-Premium-Intel
                             │      old      │                 new                  │
                             │    sec/op     │    sec/op     vs base                │
Splice/tcp-to-unix/1024-4       3.560µ ± 24%   5.165µ ± 27%  +45.10% (p=0.001 n=10)
Splice/tcp-to-unix/2048-4       4.402µ ± 21%   5.295µ ± 10%  +20.29% (p=0.007 n=10)
Splice/tcp-to-unix/4096-4       6.161µ ± 11%   5.535µ ± 19%        ~ (p=0.105 n=10)
Splice/tcp-to-unix/8192-4       7.009µ ± 22%   7.557µ ± 15%        ~ (p=0.218 n=10)
Splice/tcp-to-unix/16384-4     11.466µ ± 25%   7.228µ ± 25%  -36.96% (p=0.000 n=10)
Splice/tcp-to-unix/32768-4     19.262µ ± 34%   9.707µ ± 14%  -49.60% (p=0.000 n=10)
Splice/tcp-to-unix/65536-4      41.19µ ± 18%   19.77µ ± 16%  -52.01% (p=0.000 n=10)
Splice/tcp-to-unix/131072-4     85.08µ ± 10%   30.50µ ± 24%  -64.15% (p=0.000 n=10)
Splice/tcp-to-unix/262144-4    197.60µ ± 19%   55.84µ ± 12%  -71.74% (p=0.000 n=10)
Splice/tcp-to-unix/524288-4     345.8µ ± 16%   144.4µ ± 20%  -58.24% (p=0.000 n=10)
Splice/tcp-to-unix/1048576-4    696.2µ ± 12%   265.1µ ±  9%  -61.93% (p=0.000 n=10)
geomean                         30.94µ         18.80µ        -39.26%
                         │      old       │                  new                   │
                         │      B/s       │      B/s       vs base                 │

Splice/tcp-to-unix/1024-4       274.5Mi ± 20%   189.1Mi ± 21%   -31.12% (p=0.001 n=10)
Splice/tcp-to-unix/2048-4       443.7Mi ± 20%   369.1Mi ±  9%   -16.81% (p=0.007 n=10)
Splice/tcp-to-unix/4096-4       634.1Mi ± 13%   705.8Mi ± 24%         ~ (p=0.105 n=10)
Splice/tcp-to-unix/8192-4       1.090Gi ± 20%   1.010Gi ± 15%         ~ (p=0.218 n=10)
Splice/tcp-to-unix/16384-4      1.333Gi ± 20%   2.111Gi ± 20%   +58.41% (p=0.000 n=10)
Splice/tcp-to-unix/32768-4      1.584Gi ± 25%   3.144Gi ± 12%   +98.44% (p=0.000 n=10)
Splice/tcp-to-unix/65536-4      1.482Gi ± 15%   3.113Gi ± 19%  +110.04% (p=0.000 n=10)
Splice/tcp-to-unix/131072-4     1.435Gi ± 11%   4.003Gi ± 19%  +179.00% (p=0.000 n=10)
Splice/tcp-to-unix/262144-4     1.236Gi ± 16%   4.372Gi ± 10%  +253.65% (p=0.000 n=10)
Splice/tcp-to-unix/524288-4     1.415Gi ± 14%   3.384Gi ± 25%  +139.18% (p=0.000 n=10)
Splice/tcp-to-unix/1048576-4    1.403Gi ± 13%   3.691Gi ± 10%  +163.08% (p=0.000 n=10)
geomean                        1010.4Mi         1.625Gi         +64.73%
                         │      old      │                   new                   │
                         │     B/op      │    B/op     vs base                     │

Splice/tcp-to-unix/1024-4      0.000 ±  0%     0.000 ± 0%         ~ (p=1.000 n=10) ¹
Splice/tcp-to-unix/2048-4      0.000 ±  0%     0.000 ± 0%         ~ (p=1.000 n=10) ¹
Splice/tcp-to-unix/4096-4      0.000 ±  0%     0.000 ± 0%         ~ (p=1.000 n=10) ¹
Splice/tcp-to-unix/8192-4      0.000 ±  0%     0.000 ± 0%         ~ (p=1.000 n=10) ¹
Splice/tcp-to-unix/16384-4     0.000 ±  0%     0.000 ± 0%         ~ (p=1.000 n=10) ¹
Splice/tcp-to-unix/32768-4     0.000 ±  0%     0.000 ± 0%         ~ (p=1.000 n=10) ¹
Splice/tcp-to-unix/65536-4     1.000 ±   ?     0.000 ± 0%  -100.00% (p=0.011 n=10)
Splice/tcp-to-unix/131072-4    2.000 ± 50%     0.000 ± 0%  -100.00% (p=0.000 n=10)
Splice/tcp-to-unix/262144-4    5.000 ± 20%     0.000 ± 0%  -100.00% (p=0.000 n=10)
Splice/tcp-to-unix/524288-4    9.000 ± 22%     0.000 ± 0%  -100.00% (p=0.000 n=10)
Splice/tcp-to-unix/1048576-4   17.50 ± 20%      0.00 ± 0%  -100.00% (p=0.000 n=10)
geomean                                    ²               ?                       ² ³
¹ all samples are equal
² summaries must be >0 to compute geomean
³ ratios must be >0 to compute geomean
                         │     old      │                 new                 │
                         │  allocs/op   │ allocs/op   vs base                 │

Splice/tcp-to-unix/1024-4      0.000 ± 0%     0.000 ± 0%       ~ (p=1.000 n=10) ¹
Splice/tcp-to-unix/2048-4      0.000 ± 0%     0.000 ± 0%       ~ (p=1.000 n=10) ¹
Splice/tcp-to-unix/4096-4      0.000 ± 0%     0.000 ± 0%       ~ (p=1.000 n=10) ¹
Splice/tcp-to-unix/8192-4      0.000 ± 0%     0.000 ± 0%       ~ (p=1.000 n=10) ¹
Splice/tcp-to-unix/16384-4     0.000 ± 0%     0.000 ± 0%       ~ (p=1.000 n=10) ¹
Splice/tcp-to-unix/32768-4     0.000 ± 0%     0.000 ± 0%       ~ (p=1.000 n=10) ¹
Splice/tcp-to-unix/65536-4     0.000 ± 0%     0.000 ± 0%       ~ (p=1.000 n=10) ¹
Splice/tcp-to-unix/131072-4    0.000 ± 0%     0.000 ± 0%       ~ (p=1.000 n=10) ¹
Splice/tcp-to-unix/262144-4    0.000 ± 0%     0.000 ± 0%       ~ (p=1.000 n=10) ¹
Splice/tcp-to-unix/524288-4    0.000 ± 0%     0.000 ± 0%       ~ (p=1.000 n=10) ¹
Splice/tcp-to-unix/1048576-4   0.000 ± 0%     0.000 ± 0%       ~ (p=1.000 n=10) ¹
geomean                                   ²               +0.00%                ²
¹ all samples are equal
² summaries must be >0 to compute geomean

/cc @rsc @ianlancetaylor

It seems awkward for something like os.File to have both ReadFrom and WriteTo methods.  io.Copy will prefer the WriteTo method, which seems to mean that if the WriteTo method can't optimize it will need to reimplement part of io.Copy.  The situation with the two methods going back and forth is already rather confusing.  I would prefer to not make it more confusing.
It's possible that something like #41198 can help here.

In fact, I intended to fall back to ReadFrom in the new WriteTo method in order not to change the process of io.Copy, see the CL. But you're suggesting that we don't do the fallback in WriteTo and just return ErrUnsupported and update io.Copy to adapt it? @ianlancetaylor

I think it's worth considering.  I don't know for sure that it is better.  I do think that it is confusing for WriteTo to call ReadFrom.  The current code is already hard to understand and change, and I'm concerned about making that worse.

Any other comments from the team on this proposal? I'd like to solicit more opinions here, thanks!

After refreshing my memory of #41198, I don't think it necessarily helps.  We can't really change ReadFrom to return ErrUnsupported, because historically it has not done so.  Changing it do that would break existing callers outside of the standard library.
But we can do something like CL 475535.  I think that approach will permit the cases we want here.

After refreshing my memory of #41198, I don't think it necessarily helps. We can't really change ReadFrom to return ErrUnsupported, because historically it has not done so. Changing it do that would break existing callers outside of the standard library.
But we can do something like CL 475535. I think that approach will permit the cases we want here.

Actually, I didn't plan on returning ErrUnsupported from File.ReadFrom, I was talking about the new method File.WriteTo/TCPConn.WriteTo.
If we can update the io.copyBuffer in a way like this
	if wt, ok := src.(WriterTo); ok {
		if n, err := wt.WriteTo(dst); n > 0 || err == nil || !errors.Is(err, errors.ErrUnsupported) {
			return n, err
		}
	}
	// Similarly, if the writer has a ReadFrom method, use it to do the copy.
	if rt, ok := dst.(ReaderFrom); ok {
		if n, err := rt.ReadFrom(src); n > 0 || err == nil || !errors.Is(err, errors.ErrUnsupported) {
			return n, err
		}
	}

then we will be able to avoid wasting the user-provided buffer via io.CopyBuffer, also be able to eliminate all genericReadFrom and genericWriteTo, without breaking the compatibility of the current codebase.

After refreshing my  memory of ErrUnsupported, I don't think that change is appropriate.  We should only use ErrUnsupported when the case can't be executed at all.  That is not true for ReadFrom or WriteTo.  Those methods should do the right thing even when they can't implement a special case.  So ErrUnsupported was a red herring.  My apologies.

After a second thought, I agree that ReadFrom and WriteTo are general implementations to transfer data and we shouldn't refit them into specific cases just for io.Copy.
Well, this is however not good news for this proposal, we still need an appropriate fallback from WriteTo to ReadFrom inside io.Copy, hoping anything better than my current implementation.
Another way to help this proposal is to add a new interface similar to io.ReaderFrom, try it before WriteTo and ReadFrom in io.Copy, and implement it on UnixConn, although the new interface does look like a compensation for the collision of io.ReaderFrom and io.WriterTo of UnixConn.

Perhaps we could support a wrapper around net.UnixConn that implements a ReadFrom method that is compatible with io.Copy.

You mean an exported struct wrapper of UnixConn which is recommended to use when calling io.Copy with the destination of UnixConn?
Something like this:
type UnixConnReaderFrom struct {
	*UnixConn
}

func NewUnixConnReaderFrom(c Conn) (*UnixConnReaderFrom, error) {
	uc, ok := c.(*UnixConn)
	if !ok {
		return nil, errors.New("must be a *net.UnixConn")
	}
	return &UnixConnReaderFrom{uc}, nil
}

func (c UnixConnReaderFrom) ReadFrom(r io.Reader) (n int64, err error) {
	// do something with zero-copy...

	return
}

func main() {
	c, _ := Dial("unix", "/tmp/sock")
	uc, _ := NewUnixConnReaderFrom(c)
	f, _ := os.Create("log")
	io.Copy(uc, f)
}

Yes, something like that.  That may be too horrible, though.

You mean an exported struct wrapper of UnixConn which is recommended to use when calling io.Copy with the destination of UnixConn?
Something like this:
package net

type UnixConnReaderFrom struct {
	*UnixConn
}

func (c UnixConnReaderFrom) ReadFrom(r io.Reader) (n int64, err error) {
	// do something with zero-copy...

	return
}

func NewUnixConnReaderFrom(c Conn) (*UnixConnReaderFrom, error) {
	uc, ok := c.(*UnixConn)
	if !ok {
		return nil, errors.New("must be a *net.UnixConn")
	}
	return &UnixConnReaderFrom{uc}, nil
}

package main

func main() {
	c, _ := net.Dial("unix", "/tmp/sock")
	uc, _ := net.NewUnixConnReaderFrom(c)
	f, _ := os.Create("log")
	io.Copy(uc, f)
}

Pros and cons:

pros: we can support all three zero-copy cases: file -> unix, tcp -> unix and unix -> unix
cons: users have to use this wrapper explicitly with io.Copy, rather than naturally as in other zero-copy cases

Since the 1.22 tree had opened and we didn't come to a final implementation of this proposal at the time, I want to pick up where we left off and continue to discuss it.
Any new thoughts from the team?

Kindly ping @rsc @ianlancetaylor

What do you see as the current proposal?  Thanks.

What do you see as the current proposal? Thanks.

Well, we've made several attempts at this proposal:

The original implementation was to fall back to ReadFrom method in WriteTo, but it seemed to be confusing, quoted from your comment
The next implementation tried to use errors. ErrUnsupported but that, as it turned out, was inapposite.
The following approach would bring a new wrapper, it would enable us to support all three zero-copy cases: file -> unix, tcp -> unix and unix -> unix, but it might look a bit hideous

Therefore, I'd like to suggest adding a new interface for trying zero-copy techniques in io.Copy and having UnixConn implement it, that way, we can get what we want in this proposal and make the zero-copy transfer transparent to developers and avoid an explicit wrapper.
How do you like this new idea? @ianlancetaylor

Sorry, I'm not sure what I was thinking earlier.  I don't think we want a new exported function net.NewUnixConnReaderFrom.
I'm not yet seeing a reasonable way to do this.

As I said in the previous comment, is it acceptable to add a new interface say io.TransferFrom with method ReadFrom where we do the zero-copy, and make the type assertion with it in io.Copy, just like ReaderFrom with ReadFrom, then have UnixConn implement it?

I don't think adding another special method that io.Copy recognizes is a great idea.  The current situation with ReadFrom and WriteTo is already confusing.  That said I don't see how just adding a new interface with a ReadFrom method works, so maybe I am missing something.  We already check for an interface with a ReadFrom method.

I don't think adding another special method that io.Copy recognizes is a great idea. The current situation with ReadFrom and WriteTo is already confusing. That said I don't see how just adding a new interface with a ReadFrom method works, so maybe I am missing something. We already check for an interface with a ReadFrom method.

What I had in mind is adding a new interface and making the new type assertion with it in io.Copy, which enables us to make compensation for those types that have collisions with io.ReaderFrom or io.WriterTo, such as net.UnixConn,  give it a chance to do zero-copy optimization, express this idea with code:
// New interface
type TransferFrom interface {
	ReadFrom(r Reader) (n int64, err error)
}

func copyBuffer(dst Writer, src Reader, buf []byte) (written int64, err error) {
	// If the reader has a WriteTo method, use it to do the copy.
	// Avoids an allocation and a copy.
	if wt, ok := src.(WriterTo); ok {
		return wt.WriteTo(dst)
	}
	// Similarly, if the writer has a ReadFrom method, use it to do the copy.
	if rt, ok := dst.(ReaderFrom); ok {
		return rt.ReadFrom(src)
	}
        // Last chance for compensation
	if tf, ok := dst.(TransferFrom); ok {
		return tf.ReadFrom(src)
	}

        ...
}

I wouldn't say I love this approach, in fact, I doubt anyone else would, but it works.
Otherwise, I have to bring up my original implementation again, which has the advantage of not requiring any changes to io.Copy but makes the code a bit more confusing.

Sorry, I don't understand.  TransferFrom has exactly the same method as ReaderFrom, so anything that does not implement ReaderFrom also does not implement TransferFrom.  Type asserting to an interface type just checks whether the method is implemented, it doesn't check anything about the named interface type itself.

Sorry, I don't understand. TransferFrom has exactly the same method as ReaderFrom, so anything that does not implement ReaderFrom also does not implement TransferFrom. Type asserting to an interface type just checks whether the method is implemented, it doesn't check anything about the named interface type itself.

Oh sorry, the method name in io.TransferFrom shouldn't be ReadFrom cuz it conflicts with net.PacketConn on UnixConn, it should change to something like CopyFrom, updated code:
// New interface
type TransferFrom interface {
	CopyFrom(r Reader) (n int64, err error)
}

func copyBuffer(dst Writer, src Reader, buf []byte) (written int64, err error) {
	// If the reader has a WriteTo method, use it to do the copy.
	// Avoids an allocation and a copy.
	if wt, ok := src.(WriterTo); ok {
		return wt.WriteTo(dst)
	}
	// Similarly, if the writer has a ReadFrom method, use it to do the copy.
	if rt, ok := dst.(ReaderFrom); ok {
		return rt.ReadFrom(src)
	}
        // Last chance for compensation
	if tf, ok := dst.(TransferFrom); ok {
		return tf.CopyFrom(src)
	}

        ...
}

OK, thanks.  I don't think adding another special method that io.Copy recognizes is a good approach.  It's already too complicated.  If we do want to consider that, we should consider it by itself.

I think we have to face the fact that there might not be a good approach for this proposal based on the current problems of net.UnixConn and our previous discussions. Unless someone else has some new ideas about it, we should invite more people from the team to join this discussion?

Inspired by this CL, I just uploaded a new approach in which we can avoid calling ReadFrom in WriteTo, and we also don't have to modify io.Copy now.
What do you think of it? @ianlancetaylor

I'm going to have to look at it more, but it seems promising.  Thanks.

This proposal has been added to the active column of the proposals project
and will now be reviewed at the weekly proposal review meetings.
— rsc for the proposal review group

Have all remaining concerns about this proposal been addressed?
The API change is to define WriteTo methods on os.File and net.TCPConn.
When these are invoked by io.Copy with a net.UnixConn as the writer,
they will use a call like Linux’s sendfile(2) to make the copy, if possible.
An implementation is in https://go.dev/cl/472475.

Have all remaining concerns about this proposal been addressed?
The API change is to define WriteTo methods on os.File and net.TCPConn.
When these are invoked by io.Copy with a net.UnixConn as the writer,
they will use a call like Linux’s sendfile(2) to make the copy, if possible.
An implementation is in https://go.dev/cl/472475.

I believe there are no remaining concerns about this issue now.

Based on the discussion above, this proposal seems like a likely accept.
— rsc for the proposal review group
The API change is to define WriteTo methods on os.File and net.TCPConn.
When these are invoked by io.Copy with a net.UnixConn as the writer,
they will use a call like Linux’s sendfile(2) to make the copy, if possible.
An implementation is in https://go.dev/cl/472475.

No change in consensus, so accepted. 🎉
This issue now tracks the work of implementing the proposal.
— rsc for the proposal review group
The API change is to define WriteTo methods on os.File and net.TCPConn.
When these are invoked by io.Copy with a net.UnixConn as the writer,
they will use a call like Linux’s sendfile(2) to make the copy, if possible.
An implementation is in https://go.dev/cl/472475.


Contract Pipeline

Summary

RFCs: $\emptyset$.
Categories: scripts.

Handles contract deployment, upgrades and stores it using Foundry script.
Changelog

MovementDeployer.s.sol - Script to handle deployment of all solidity contracts.

Testing
Relying on previous tests. Deployment is valid and stored values are valid.
Outstanding issues

parameters are currently hardcoded, we might want to add flexibility for upgrades.
Versioning is currently not supported.

Relying on previous tests. Deployment is valid and stored values are valid.

Can you expand?

This PR should be renamed something like "Contract Pipeline Deployment Scripts" for clarity. It doesn't include the actual automation, checks, etc., ofc.

If I run back-to-back deployments on Holesky naively, I get new proxies. The intended usage needs to be documented.
forge script -f https://ethereum-holesky-rpc.publicnode.com ./script/MovementDeployer.s.sol --legacy --broadcast
[⠊] Compiling...
[⠘] Compiling 79 files with 0.8.26
[⠒] Solc 0.8.26 finished in 3.94s
Compiler run successful with warnings:
Warning (2519): This declaration shadows an existing declaration.
   --> script/MovementDeployer.s.sol:119:56:
    |
119 |     function _storeAdminDeployment() internal returns (address admin) {
    |                                                        ^^^^^^^^^^^^^
Note: The shadowed declaration is here:
  --> script/MovementDeployer.s.sol:23:5:
   |
23 |     ProxyAdmin public admin;
   |     ^^^^^^^^^^^^^^^^^^^^^^^

Warning (2072): Unused local variable.
   --> script/MovementDeployer.s.sol:106:9:
    |
106 |         string memory a = json.serialize("move", deployment.move);
    |         ^^^^^^^^^^^^^^^

Warning (2072): Unused local variable.
   --> script/MovementDeployer.s.sol:107:9:
    |
107 |         string memory b = json.serialize("moveAdmin", deployment.moveAdmin);
    |         ^^^^^^^^^^^^^^^

Warning (2072): Unused local variable.
   --> script/MovementDeployer.s.sol:108:9:
    |
108 |         string memory c = json.serialize("staking", deployment.staking);
    |         ^^^^^^^^^^^^^^^

Warning (2072): Unused local variable.
   --> script/MovementDeployer.s.sol:109:9:
    |
109 |         string memory d = json.serialize("stakingAdmin", deployment.stakingAdmin);
    |         ^^^^^^^^^^^^^^^

Warning (2072): Unused local variable.
   --> script/MovementDeployer.s.sol:110:9:
    |
110 |         string memory e = json.serialize("stlMove", deployment.stlMove);
    |         ^^^^^^^^^^^^^^^

Warning (2072): Unused local variable.
   --> script/MovementDeployer.s.sol:111:9:
    |
111 |         string memory f = json.serialize("stlMoveAdmin", deployment.stlMoveAdmin);
    |         ^^^^^^^^^^^^^^^

Warning (2072): Unused local variable.
   --> script/MovementDeployer.s.sol:112:9:
    |
112 |         string memory g = json.serialize("mcr", deployment.mcr);
    |         ^^^^^^^^^^^^^^^

Warning (2072): Unused local variable.
   --> script/MovementDeployer.s.sol:113:9:
    |
113 |         string memory h = json.serialize("mcrAdmin", deployment.mcrAdmin);
    |         ^^^^^^^^^^^^^^^

Warning (2072): Unused local variable.
   --> script/MovementDeployer.s.sol:114:9:
    |
114 |         string memory i = json.serialize("timelock", deployment.timelock);
    |         ^^^^^^^^^^^^^^^

Warning (2018): Function state mutability can be restricted to pure
 --> script/helpers/Helper.sol:6:5:
  |
6 |     function s2a(bytes memory str) public returns (address addr) {
  |     ^ (Relevant source part starts here and spans across multiple lines).

Total Paid: 0.0085974771267855 ETH (13576725 gas * avg 0.63325118 gwei)

Transactions saved to: /Users/l-monninger/dev/movement/protocol-units/settlement/mcr/contracts/broadcast/MovementDeployer.s.sol/17000/run-latest.json

Sensitive values saved to: /Users/l-monninger/dev/movement/protocol-units/settlement/mcr/contracts/cache/MovementDeployer.s.sol/17000/run-latest.json

l-monninger@Liams-MBP contracts % forge script -f https://ethereum-holesky-rpc.publicnode.com ./script/MovementDeployer.s.sol --legacy --broadcast
[⠊] Compiling...
[⠘] Compiling 79 files with 0.8.26
[⠒] Solc 0.8.26 finished in 3.88s
Compiler run successful with warnings:
Warning (2519): This declaration shadows an existing declaration.
   --> script/MovementDeployer.s.sol:119:56:
    |
119 |     function _storeAdminDeployment() internal returns (address admin) {
    |                                                        ^^^^^^^^^^^^^
Note: The shadowed declaration is here:
  --> script/MovementDeployer.s.sol:23:5:
   |
23 |     ProxyAdmin public admin;
   |     ^^^^^^^^^^^^^^^^^^^^^^^

Warning (2072): Unused local variable.
   --> script/MovementDeployer.s.sol:106:9:
    |
106 |         string memory a = json.serialize("move", deployment.move);
    |         ^^^^^^^^^^^^^^^

Warning (2072): Unused local variable.
   --> script/MovementDeployer.s.sol:107:9:
    |
107 |         string memory b = json.serialize("moveAdmin", deployment.moveAdmin);
    |         ^^^^^^^^^^^^^^^

Warning (2072): Unused local variable.
   --> script/MovementDeployer.s.sol:108:9:
    |
108 |         string memory c = json.serialize("staking", deployment.staking);
    |         ^^^^^^^^^^^^^^^

Warning (2072): Unused local variable.
   --> script/MovementDeployer.s.sol:109:9:
    |
109 |         string memory d = json.serialize("stakingAdmin", deployment.stakingAdmin);
    |         ^^^^^^^^^^^^^^^

Warning (2072): Unused local variable.
   --> script/MovementDeployer.s.sol:110:9:
    |
110 |         string memory e = json.serialize("stlMove", deployment.stlMove);
    |         ^^^^^^^^^^^^^^^

Warning (2072): Unused local variable.
   --> script/MovementDeployer.s.sol:111:9:
    |
111 |         string memory f = json.serialize("stlMoveAdmin", deployment.stlMoveAdmin);
    |         ^^^^^^^^^^^^^^^

Warning (2072): Unused local variable.
   --> script/MovementDeployer.s.sol:112:9:
    |
112 |         string memory g = json.serialize("mcr", deployment.mcr);
    |         ^^^^^^^^^^^^^^^

Warning (2072): Unused local variable.
   --> script/MovementDeployer.s.sol:113:9:
    |
113 |         string memory h = json.serialize("mcrAdmin", deployment.mcrAdmin);
    |         ^^^^^^^^^^^^^^^

Warning (2072): Unused local variable.
   --> script/MovementDeployer.s.sol:114:9:
    |
114 |         string memory i = json.serialize("timelock", deployment.timelock);
    |         ^^^^^^^^^^^^^^^

Warning (2018): Function state mutability can be restricted to pure
 --> script/helpers/Helper.sol:6:5:
  |
6 |     function s2a(bytes memory str) public returns (address addr) {
  |     ^ (Relevant source part starts here and spans across multiple lines).

Total Paid: 0.008597469541348053 ETH (13576713 gas * avg 0.633251181 gwei)

Transactions saved to: /Users/l-monninger/dev/movement/protocol-units/settlement/mcr/contracts/broadcast/MovementDeployer.s.sol/17000/run-latest.json

Sensitive values saved to: /Users/l-monninger/dev/movement/protocol-units/settlement/mcr/contracts/cache/MovementDeployer.s.sol/17000/run-latest.json

For one shot, this appears to be correct, but we need some basic e2e checks.

@0xPrimata what are the objectives for this PR? As we've discussed elsewhere, it's not supposed to be the complete pipeline nor even the final scripts. How do we want to determine success?

@0xPrimata what are the objectives for this PR? As we've discussed elsewhere, it's not supposed to be the complete pipeline nor even the final scripts. How do we want to determine success?

I think that this is final once instead of scheduling a transaction, I call the safe API by proposing a transaction: https://docs.safe.global/sdk/api-kit#propose-a-transaction-to-the-service
Believe this is also blocked by the MOVEToken merge.

I think that this is final once instead of scheduling a transaction, I call the safe API by proposing a transaction: https://docs.safe.global/sdk/api-kit#propose-a-transaction-to-the-service

Yeah, so usage of Safe is underspecified. This pipeline work should last into next week at least. For the MOVEToken deployment--which is on a tighter timeline--I would go with whatever you're most comfortable with.

Head up @0xPrimata @l-monninger https://github.com/movementlabsxyz/movement/issues/703
I haven't investigated beyond trying to run Suzuka + bridge locally, will look deeper into it after getting L1 --> L2 E2E tests against framework done (working against commit right before 561 was merged, because local Suzuka + bridge works for that commit).


Fullpage scrolling library for Angular2 based on fullPage.js

Port library for a new modern Angular 2 framework. Based on jQuery and fullPage.js
For additional details visit project github page: https://github.com/meiblorn/ng2-fullpage or demo

great module


🐛 Page jumps when using copy button and scrolling

Describe the bug
When using the copy button, selecting another window and selecting the browser again, everything works fine. However, if I use the copy button and scroll with the trackpad before or after selecting the other window, the page jumps up when I select the browser again:

Note that here the page jumps to the top, but that isn't always the case. It just always jumps "up".
This was in a local build, but here's a link to a page where these jumps also occur:
https://aiida.readthedocs.io/projects/aiida-core/en/latest/intro/tutorial.html
and the corresponding repo:
https://github.com/aiidateam/aiida-core
Environment
For the build in the gif:

Python Version [e.g. 3.7.1]: 3.6.9
Package versions or output of jupyter-book --version: The bug occurs for both sphinx-copybutton-0.2.12 and sphinx-copybutton-0.3.1.
Operating System: MacOS Mojave Version 10.14.5

Additional context
First reported here by @ltalirz.

Nah don't know what you're talking about 😝

Nah don't know what you're talking about 😝

😆 Well, you know, no pressure, but if you could fix this before next week's BIGMAP tutorial, that'd be great, @chrisjsewell! 😉

Nah don't know what you're talking about 😝

I met the same situation. Here are steps to reproduce it:

Click copy button in HTML page;
Change to other tabs or other programs;
Come back. Then you will find the page was scrolled up.

Nah don't know what you're talking about 😝

😆 Well, you know, no pressure, but if you could fix this before next week's BIGMAP tutorial, that'd be great, @chrisjsewell! 😉

Hi @mbercx  I find that the copy button seems working fine with the current AliDA doc, could you please tell me how do you solve with it?

@MegChai I didn't solve it myself, but maybe @chrisjsewell did some magic? He's the EB expert in our team. :)

Still a problem on our latest tutorial docs (also on our main documentation, btw). Has anyone looked into a fix for this? It makes presenting for tutorials with the copybutton quite confusing. 😅

My workaround for now is just having the habit of clicking an extra time next to the code snippet after copying before I move to another window, that seems to avoid the jumping.

This is likely due to the implementation of clipboard.js (they had similar issues before: https://github.com/zenorocha/clipboard.js/issues/179). It creates a textarea to make text copyable, and this is likely what confuses the page positioning.

Yea, the solution might be to do #97. 🙃

It seems to be this logic: the fakeElement attached to DOM and selected has to be at the current y-position. Now if only I knew CSS, I would probably be able to understand what goes wrong, however it seems like a hack and a direct JS approach seems more reliable indeed.

@pradyunsg i am all for it! i just have no idea how to do it haha


Migrate file by file rather than the entire directory

Oh, and run pre-commit run -a or use Rider or something to handle the formatting please ;-)

@andybak , can I ask you to take a quick look at this?


Can't post properly on AskReddit.

When posting on r/AskReddit the bot adds stuff in the text field as well which is against the rules of the subreddit. Happens 3/5 times statistically. As a result the post automatically gets pulled down.  Would love to have this issue fixed as that subreddit is a probable gold mine.

AFAIK it should never add anything to the text field, it should just repost what someone else has posted. I might be wrong here, but I don't think it should be possible for it to add text to the text field.

AFAIK it should never add anything to the text field, it should just repost what someone else has posted. I might be wrong here, but I don't think it should be possible for it to add text to the text field.

I did think of that. But AskReddit automatically removes any post which has text in the text field. So by that logic the bot  shouldn't capture any submissions with the above criteria as they shouldn't theoretically exist right ? Maybe I'm wrong over here but I think the bot might be glitching up somewhere. If you want I can attach screenshots of the reports of the posts being pulled down.

Screenshots would be helpful. It's possible that the bot isn't putting flairs properly, because it doesn't do that at the moment and lots of bigger subreddits require them. Not sure if that's the issue though. Need more data if you have it.


readme: Add codecov badge

Codecov Report

Merging #16 (a1a8fb6) into main (d281e58) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main      #16   +/-   ##
=======================================
  Coverage   88.74%   88.74%
=======================================
  Files          14       14
  Lines        1288     1288
=======================================
  Hits         1143     1143
  Misses        145      145

Continue to review full report at Codecov.

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


Fix potential for double transform of images (i.e with operators that self-reference)

Description
Checks if image.Host has already been patched
Related Issue
Fixes #1988

Relates to #
Type of change

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[x] Other (security config, docs update, etc)

Checklist before merging

[x] Test, docs, adr added or updated as needed
[x] Contributor Guide Steps followed

@Racer159 I took the needs test label off because I think i have covered the newly implemented logic in image_test.go. LMK if you would like to see changes.


Delete ignored key from config.json

Since the exercise implementations are all in the exercises directory
we no longer need to ignore any non-exercise directories in the root
of the track.
See https://github.com/exercism/meta/issues/3 for context.

I've created another PR, #59, which normalizes all of the whitespace in the config.json so
that the change in this PR is minimized and easier to see.
If you merge the other PR first, I'll go ahead and rebase this one onto master.
Sorry about the noise!

I'm going to go ahead and merge this in.


Error during php artisan db:seed

This is  a bug.

Prerequisites

[X] Are you running the latest version?
[X] Are you reporting to the correct repository?
[X] Did you check the documentation?
[ ] Did you perform a cursory search?

Description
Installing the application throws an error.
Steps to Reproduce

Manual execute the commands contained in setup.sh in terminal : php artisan db:seed

Expected behavior
A successfull installation
Actual behavior
Error:
`   INFO  Seeding database.
Symfony\Component\ErrorHandler\Error\FatalError
Cannot use Illuminate\Foundation\Auth\User as Authenticatable because the name is already in use
at app\Models\User.php:13
9▕ use Illuminate\Database\Eloquent\Relations\BelongsToMany;
10▕ use Illuminate\Foundation\Auth\User as Authenticatable;
11▕ use Illuminate\Support\Collection;
12▕ use Illuminate\Database\Eloquent\Factories\HasFactory;
➜  13▕ use Illuminate\Foundation\Auth\User as Authenticatable;
14▕ use Illuminate\Notifications\Notifiable;
15▕ use Laravel\Sanctum\HasApiTokens;
16▕
17▕ class User extends Authenticatable implements FilamentUser, HasTenants
Whoops\Exception\ErrorException
Cannot use Illuminate\Foundation\Auth\User as Authenticatable because the name is already in use
at app\Models\User.php:13
9▕ use Illuminate\Database\Eloquent\Relations\BelongsToMany;
10▕ use Illuminate\Foundation\Auth\User as Authenticatable;
11▕ use Illuminate\Support\Collection;
12▕ use Illuminate\Database\Eloquent\Factories\HasFactory;
➜  13▕ use Illuminate\Foundation\Auth\User as Authenticatable;
14▕ use Illuminate\Notifications\Notifiable;
15▕ use Laravel\Sanctum\HasApiTokens;
16▕
17▕ class User extends Authenticatable implements FilamentUser, HasTenants
1   vendor\filp\whoops\src\Whoops\Run.php:510
Whoops\Run::handleError("Cannot use Illuminate\Foundation\Auth\User as Authenticatable because the name is already in use", "D:\LARAGON\www\genealogy-laravel\app\Models\User.php")
2   [internal]:0
Whoops\Run::handleShutdown()
`
This is due to an error in app\Models\User.php : use Illuminate\Foundation\Auth\User as Authenticatable; is mentioned twice.
When removing the second use Illuminate\Foundation\Auth\User as Authenticatable; the following error occures during issuing the command php artisan db:seed :
`   INFO  Seeding database.
Symfony\Component\ErrorHandler\Error\FatalError
Class App\Models\User contains 1 abstract method and must therefore be declared abstract or implement the remaining methods (Filament\Models\Contracts\FilamentUser::canAccessPanel)
at app\Models\User.php:16
12▕ use Illuminate\Notifications\Notifiable;
13▕ use Illuminate\Support\Collection;
14▕ use Laravel\Sanctum\HasApiTokens;
15▕
➜  16▕ class User extends Authenticatable implements FilamentUser, HasTenants
17▕ {
18▕     use HasApiTokens, HasFactory, Notifiable;
19▕
20▕     /**
Whoops\Exception\ErrorException
Class App\Models\User contains 1 abstract method and must therefore be declared abstract or implement the remaining methods (Filament\Models\Contracts\FilamentUser::canAccessPanel)
at app\Models\User.php:16
12▕ use Illuminate\Notifications\Notifiable;
13▕ use Illuminate\Support\Collection;
14▕ use Laravel\Sanctum\HasApiTokens;
15▕
➜  16▕ class User extends Authenticatable implements FilamentUser, HasTenants
17▕ {
18▕     use HasApiTokens, HasFactory, Notifiable;
19▕
20▕     /**
1   vendor\filp\whoops\src\Whoops\Run.php:510
Whoops\Run::handleError("Class App\Models\User contains 1 abstract method and must therefore be declared abstract or implement the remaining methods (Filament\Models\Contracts\FilamentUser::canAccessPanel)", "D:\LARAGON\www\genealogy-laravel\app\Models\User.php")
2   [internal]:0
Whoops\Run::handleShutdown()`

Will look into this when I get my laptop working.
Any idea, @curtisdelicata @boscan-alexandru @Alain-Kay @AArchange

Should be fixed now I accidentally added the import twice


Sunstone under Apache Passenger and SELinux doesn't detect running VNC proxy

Description
As observed on

CentOS 8
Sunstone under Apache via Passenger (from EPEL)
enforcing SELinux

Sunstone refuses to connect to the noVNC as it's not able to detect locally running noVNC due to restrictions introduced by SELinux.

Following issues can be experienced:

stat on the lock file doesn't work:
https://github.com/OpenNebula/one/blob/master/src/sunstone/OpenNebulaVNC.rb#L332
as Apache is only able to read the directory, not stat individual files there

# ls -la /run/lock/one/
-?????????? ? ?        ?         ?            ? .novnc.lock
-?????????? ? ?        ?         ?            ? one

Process running under SELinux context type httpd_t can't manipulate with files of type var_lock_t.

even if stat above would work, the read wouldn't pass
https://github.com/OpenNebula/one/blob/45899f763d442d4087be71712506933057da4989/src/sunstone/OpenNebulaVNC.rb#L333

even if read would pass, process would not be seen in the process list
https://github.com/OpenNebula/one/blob/45899f763d442d4087be71712506933057da4989/src/sunstone/OpenNebulaVNC.rb#L335
as ps command shows only Apache related processes (again those with type httpd_t).

Solution Proposal
For web requests (def proxy), have a simplified checking for running VNC
just based on the existence lock file, but detect lock by listing whole directory instead of statting individual file (as stat will fail Errno::ENOENT - No such file or directory @ rb_file_s_stat - /var/lock/one/.novnc.lock).
E.g., having this simplified test
    def is_lockfile?
        dn = File.dirname(@lock_file)
        bn = File.basename(@lock_file)

        # Due to restrictions which doesn't allow to stat the lock file
        # when Sunstone is running under Apache with SELinux enabled,
        # as a workaround we read content of the whole lock directory.
        begin
            Dir.entries(dn).include?(bn)
        rescue StandardError
            false
        end
    end

and use this instead in proxy method:
    def proxy(vm_resource)
        # Check configurations and VM attributes
        unless is_lockfile?
            return error(400, "VNC Proxy is not running")
        end

This simple workaround should be enough, as we pretty much rely on service manager that it cleans the locks in case of service stop or failure.
Details

Affected Component: Sunstone
Version: 5.10, master

Progress Status

[ ] Branch created
[ ] Code committed to development branch
[ ] Testing - QA
[ ] Documentation
[ ] Release notes - resolved issues, compatibility, known issues
[ ] Code committed to upstream release/hotfix branches
[ ] Documentation committed to upstream release/hotfix branches

I'm not using passanger, but I also forced to use some dirty workaround to run novnc on separated container in Kube-OpenNebula
https://github.com/kvaps/kube-opennebula/blob/master/helm/opennebula/templates/sunstone-deployment.yaml#L41-L44

PRs to merge:

one: #4432
docs: OpenNebula/docs/pull/1014