Automate sending of certificates to badged Instructors

When someone receives a DC, LC, or SWC badge, we have a script that generates an Instructor Certificate and stores it in this repo.  (Note this is a private repo.)
Currently, I manually run a Python script that sends an email to each newly badged Instructor with their certificate attached.  We'd like to see this integrated into AMY, where the certificate is generated once the badge is assigned.
This can be emailed to the Instructor and a copy can also be accessible to the Instructor when they log in to their own profile.
Edit - link to my Python script used to email certificates (also in a private repo)

Update - I think this would be useful to implement as part of the upcoming instructor selection project.  We can issue the certificate  when the badge is assigned in AMY.  Then, instead of emailing the certificate as a separate email with an attachment, we can have the email direct people to their AMY profile to view/download their certificate and ensure everything else in their profile is set up.  This will ensure they are ready to sign up for workshops using our new system.

The steps as I understand are:

generate certificate
send email with link to profile page
allow certificate to be downloaded from the profile page

Where would be certificates stored? On AMY's server? I'd say S3 bucket is a better solution here. We'd have to have a discussion with @fmichonneau on how to technically resolve some challenges in this task.

I have a script I run locally that does the following:

Takes as input a text file and a svg file
Queries for recently badged instructors
Generates a PDF certificate for each instructor using the svg template
Sends an email using the text file as its body with the PDF certificate attached

The certificate is never stored anywhere (beyond the moment necessary when generating and sending it).
We do either/both of the following:

Have an automated email that does the above steps once the Instructor badge is awarded
Have an automated email that invites the Instructor to log in to AMY to download their certificate as below.
Have a button on the Instructor profile page that will generate the certificate as above and allow the Instructor to download it.  This can be available at any time, so if an Instructor loses their certificate, they can recover it.

I would recommend having Instructors log in to AMY to download their profile, as this ensures they are getting in to AMY which is required to sign up for teaching opportunities.  It also gets them to verify that their personal information and consents are accurate and up to date.

I've added this to the email automation project as that most closely fits our current workflows (I have a scheduled script that sends the emails weekly).  If we to having the option to download the certificate in AMY, we would still have an automated email that tells them they completed certification and their certificate is ready to be downloaded.


iOS zooms input fields - e.g. search

Current behavior

Clicking the search button on iOS makes the search fly in from the right, but it also zooms into the search input field by default.

Expected behavior

Clicking the search button makes the search input fly in from the right, but the whole page doesn't change zoom level.

Steps to replicate behavior

Test on iOS simulator (or device, presumably the behavior is the same).
Click Search button.

Screenshots
Current

Updating search input to 16px prevents the zooming, however, that makes the input misaligned with the button. @jimmynotjim suggested making the button 16px, which would make the input 16px across all screen sizes.

Does not appear to be an issue on iOS 11.


Set the version to be 0.x.x

Set the version to be v0.x.x.  This is not actually at a properly tested version so it needs to follow the proper process

Closed.
Version is already set to 0.2


Pixel Streaming in Qt web browser engine (Qt Embedding a Web Browser)

UE Version:
E.g. UE 5.4
Frontend Version:
E.g. UE5.4
Problem component
Frontend, Pixel Streaming in Qt web browser engine (Qt Embedding a chrome Web Browser engine with disabled default options)
Description
When i try to connect from the frontend page (player.ts) , i got this error message in Qt:
"Js: [Failed to execute 'setRemoteDescription' on 'RTCPeerConnection'](js: Uncaught (in promise) InvalidAccessError: Failed to execute 'setRemoteDescription' on 'RTCPeerConnection': Failed to set remote offer sdp: Failed to set remote video description send parameters.)"
Any tips or experiences with Qt web browser ?

async function testSleep() {
console.log("Waiting for 1 year...");
await sleep(31556952);
console.log("Waiting done.  ");
}


Auto acknowledge existing linter errors

add a "acknowledge-existing-errors" that runs a lint and add a "noqa {code}" for most errors (blk101 ignored - just run black), to offending lines.
Objective is to make adoption or upgrading to newer version of the tool to be simple - "run lint, if many errors, fix what is reasonable and auto-supress remainder. This way new you can enforce any new code meets current standards, with minimal effort"

working on tests now

working on tests now

Please resolve the issues brought up by Josh, but I'm good with the changes.

Please resolve the issues brought up by Josh, but I'm good with the changes.


[codespaces] Web app does not follow redirects from "private" port

When hosting an API and Web app in codespaces the API URL must be made "Public" ... This is (partially) because the react app does not follow redirects when running in the client's browser.
Repro steps:

Create codespaces instance against a sample repo (example)
Provision resources
Launch debug for the API
Manually mark the port as "Private" (warning the "Ports" page may not reflect the accurate state of the port, use gh codespace ports -c $CODESPACE_NAME instead) using the gh codespace ports visibility 3100:private -c $CODESPACE_NAME
Start the web app (debug not required)
Launch the debug app

Expected: Page content loads properly
Actual: Page content does not load
The request to get lists is redirected to an authentication experience:

Setting the port to public instead of private alleviates the problem.
In its current state, using codespaces with public ports is not significantly different from deploying the application itself using azd deploy. That is, deploying the application exposes swagger and API endpoints publicly, which is similar to using codespaces with a public API endpoint enabled.

Even if we followed the redirect -- we would hit by the nginx proxy that Codespaces uses to route the traffic to the Codespace instance, so it will still not fix the requirement that the backend app needs to be public.

@danieljurek @weikanglim is this still applicable? Since it talks about debugging and Codespaces doesn't support?
cc @savannahostrowski

Web development works best on vscode desktop.


eslint to existing rules; revert earlier jslint change requiring keyw…

…ords to be quoted as properties (e.g., 'delete' instead of delete())
All JS files should be passing ESLint now...

aww d'oh we got a merge conflict here :frowning:

Replaced by PR #138


Issue with Uri.encodeComponent not encoding correctly

Steps to reproduce
  final fileName = file.name;
  print("FileName--$fileName");
  final encodedFileName = Uri.encodeComponent(fileName);
  print("ecode--$encodedFileName"); // Encode the file name

  flutter: FileName--doc (1).doc

flutter: ecode--doc%20(1).doc
Expected results
the ecode-- should be doc%20%281%29.doc
Actual results
the ecode-- doc%20(1).doc
Code sample
  final filePath = file.path!;
  final fileName = file.name;
  print("FileName--$fileName");
  final encodedFileName = Uri.encodeComponent(fileName);
  print("ecode--$encodedFileName");

Screenshots or Video
No response
Logs
No response
Flutter Doctor output
flutter doctor -v
[✓] Flutter (Channel stable, 3.22.3, on macOS 14.4.1 23E224 darwin-arm64, locale en-IN)
• Flutter version 3.22.3 on channel stable at /Users/ankitkhaire/Documents/flutter
• Upstream repository https://github.com/flutter/flutter.git
• Framework revision b0850beeb2 (12 days ago), 2024-07-16 21:43:41 -0700
• Engine revision 235db911ba
• Dart version 3.4.4
• DevTools version 2.34.3
[!] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
• Android SDK at /Users/ankitkhaire/Library/Android/sdk
• Platform android-34, build-tools 34.0.0
• ANDROID_SDK_ROOT = /Users/ankitkhaire/Library/Android/sdk
• Java binary at: /Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java
• Java version OpenJDK Runtime Environment (build 17.0.10+0-17.0.10b1087.21-11572160)
✗ Android license status unknown.
Run flutter doctor --android-licenses to accept the SDK licenses.
See https://flutter.dev/docs/get-started/install/macos#android-setup for more details.
[✓] Xcode - develop for iOS and macOS (Xcode 15.4)
• Xcode at /Applications/Xcode.app/Contents/Developer
• Build 15F31d
• CocoaPods version 1.15.2
[✓] Chrome - develop for the web
• Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome
[✓] Android Studio (version 2023.3)
• Android Studio at /Applications/Android Studio.app/Contents
• Flutter plugin can be installed from:
🔨 https://plugins.jetbrains.com/plugin/9212-flutter
• Dart plugin can be installed from:
🔨 https://plugins.jetbrains.com/plugin/6351-dart
• Java version OpenJDK Runtime Environment (build 17.0.10+0-17.0.10b1087.21-11572160)
[✓] VS Code (version 1.91.1)
• VS Code at /Applications/Visual Studio Code.app/Contents
• Flutter extension version 3.92.0
[✓] Connected device (4 available)
• iPhone 15 Pro Max (mobile)      • D167F2FF-425C-4489-B22C-F0B8C6D6703D • ios            • com.apple.CoreSimulator.SimRuntime.iOS-17-4 (simulator)
• macOS (desktop)                 • macos                                • darwin-arm64   • macOS 14.4.1 23E224 darwin-arm64
• Mac Designed for iPad (desktop) • mac-designed-for-ipad                • darwin         • macOS 14.4.1 23E224 darwin-arm64
• Chrome (web)                    • chrome                               • web-javascript • Google Chrome 126.0.6478.185
! Error: Browsing on the local area network for iPhone 13. Ensure the device is unlocked and attached with a cable or associated with the same local area network as this Mac.
The device must be opted into Developer Mode to connect wirelessly. (code -27)
! Error: Browsing on the local area network for Nimble’s iPad. Ensure the device is unlocked and attached with a cable or associated with the same local area network as this Mac.
The device must be opted into Developer Mode to connect wirelessly. (code -27)
! Error: Browsing on the local area network for iPhone X. Ensure the device is unlocked and attached with a cable or associated with the same local area network as this Mac.
The device must be opted into Developer Mode to connect wirelessly. (code -27)
! Error: Browsing on the local area network for iPhone 13 pro max. Ensure the device is unlocked and attached with a cable or associated with the same local area network as this Mac.
The device must be opted into Developer Mode to connect wirelessly. (code -27)
[✓] Network resources
• All expected network resources are available.
! Doctor found issues in 1 category.

Uri.encodeComponent is from the dart sdk itself. This will have to be reported on the dart repo https://github.com/dart-lang/sdk/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-desc+
Closing from here.
Thank you


Add a more clear way to send Ctrl+Alt+Delete

Describe the issue
I was able to install windows server 2019 but to open lock screen its asking for to press CLT+ALt+DELETE i tried all keys control,option,delete  still not working
please help
Configuration*

UTM Version: 4.2.5 (81)
macOS Version: 12.6.8
Mac Chip (Intel, M1, ...): M1

Upload VM
config.plist.zip

This is a great example of why I strongly think UTM needs an easier way (in the UI) to send "difficult-to-press-on-macOS" key combinations like Ctrl+Alt+Delete to the guest VM: #5684
I don't think it's reasonable to assume that every new user automatically knows that Ctrl+Alt+Delete is obviously Fn+Control+Option+Backspace on macOS.

it did worked after clicking Control+Command+Delete continuously for 1 min


Add Preloader in React Application

hey @AKD-01 , i want to add preloader to your react application that provides modern UI . This will also helps in loading the other components of application faster.
Demo :Link
I hope these suggestions help you in your web design improvements. Assign this issue to me under gssoc2023

@Prap1 has already worked on it but Please before taking any issue let me assign it to you first then only work on that in future. And @heyhimansh I have assigned you another issue you may work on that.


RSpec cleanup and upgrade to ~> 3.4

Thank you for the cleanup and modernized Rspec - Changes LGTM


Fix logon by Statement issue

Signed-off-by: jichenjc<EMAIL_ADDRESS>

@bjhuangr please help review this .. thanks


Fix case where event is not emitted outside of the shadow dom in Chrome 53 (native v1 shadow dom)

This fails for Chrome (53.0.2785), passes for Firefox (48.0.0), so needs a fix to move forward.
DO NOT MERGE if you want a green build. :)

As discussed IRL, setting { composed: true } works in native Shadow DOM v1. That's probably the fix we want as if intentionally didn't add it back and made the user specify it, it would be breaking current expectations (even if it's not our API).

Also, looks like the build is passing. We should probably add Chrome 53 to the list of browsers to make it fail.

And browser stack only seem to go up to stable 52 right now. :/
It looks like skate build is setup to run again the latest anyway, it just seems to only be 52.

Right ok, wasn't sure if they just hadn't bumped latest or something.

lgtm

@craigpetchell I just raised #768 so that we can continue with your fix here and then change it for 2.x.

lgtm

@jpnelson - I've covered everything off (afaik), so it just needs some release/merge magic.


When the project is started, trying to change the vertical synchronization in the macos system will cause the macos system kernel to crash and the computer to restart with a black screen.

Tested versions
Godot v4.2.1.stable.mono
System information
Godot v4.2.1.stable.mono - macOS 14.4.1 - Vulkan (Forward+) - integrated Apple M2 - Apple M2 (8 Threads)
Issue description
1.When the project is started, trying to change the vertical synchronization in the macos system will cause the macos system kernel to crash and the computer to restart with a black screen.
2.After preliminary testing, the scenario was run through the editor environment. No problem was found the first time, but the second run after closing the window would cause the system to crash.
3.If you use vscode to run the scene in debugging mode, no system crash is currently found.
Steps to reproduce

Open the editor
Run the project

Minimal reproduction project (MRP)
ErrorDemo.zip

Could not reproduce on 4.3 (.NET) and on 4.4 (GDScript) on my machine:
Godot v4.4.dev (87318a2fb) - macOS 15.0.1 - Multi-window, 1 monitor - Metal (Forward+) - integrated Apple M3 Max (Apple9) - Apple M3 Max (16 threads)

I can't reproduce this in 4.3 (empty project) on a MBP
Godot v4.3.stable - macOS 15.1.0 - Vulkan (Forward+) - integrated Apple M2 Pro - Apple M2 Pro (10 Threads)

@quietofheart Is the issue still happening on your side?


Block arguments and local variables not visible in flat rescue/ensure/else

#5114 introduced new possibilities to use rescue, ensure and else with blocks. However the following examples shows, that variables are unexpectedly handled:
%w(foo bar).each do |x|
ensure
  p x   # => ERROR: undefined local variable or method 'x'
end

This should be equivalent to:
%w(foo bar).each do |x|
  begin
  ensure
    p x
  end
end

Which compiles without errors. Block arguments are initialized in every block run, they are before the implicit begin and should be visible in rescue, ensure and else branches.
Second example:
%w(foo bar).each do |x|
  foo = x
ensure
  p foo.upcase   # => ERROR: undefined method 'foo'
end

Which should be equivalent to:
%w(foo bar).each do |x|
  begin
    foo = x
  ensure
    p foo.upcase   # => ERROR: undefined method 'upcase' for Nil (compile-time type is (String | Nil))
  end
end

The variable foo should be visible in rescue, ensure and else branches but be nilable there, just like in the expressive variant.
/cc @MakeNowJust

Good catch!


[WIP] Multisite Support

Ref: #111
Todo:

[ ] fix whitespace
[ ] add multisite declaration to wp-config
[ ] test it out!

Whats the latest on this?

@zanematthew Whoops, @AntJanus doesn't work on this project anymore.  It just needs someone to pick back up on it...

@ericclemmons Thanks for the comment and the 411, worth knowing...(making mental note to add another repo to my bucket list of projects to contribut to).

Closing this out for now


Order book expand numbers

fixes https://github.com/AugurProject/augur/issues/1302
fixes https://github.com/AugurProject/augur/issues/1307#workspaces/augur-5bfed3424b5806bc2bf8d173/boards?assignees=phoebemirman&filterLogic=any&repos=27623806,30208175,59862419,132104715,142967010

This pull request introduces 3 alerts when merging c8d3aa17acf18e1c12a177948b49e9ee7556dd1e into 812f2f438ad4ed9f6b83432cabba490056c28b01 - view on LGTM.com
new alerts:

3 for Unused variable, import, function or class

Comment posted by LGTM.com

This pull request introduces 2 alerts when merging 0d1024727761a5f4bb95328a07dc43ad07b3f586 into e30cb6c4be1e2a944cb2830f1151c56de7f9b3bc - view on LGTM.com
new alerts:

2 for Unused variable, import, function or class

Comment posted by LGTM.com


[BUG] Error txAdminInterface variable, can't start server

Hi
If add +set txAdminInterface IP show error on startup, and don't accept any settings in server.cfg. In server cfg setup correct settings, and don't accept it.
We're have 3 ip on server, and want restrict ip usage on server.

Bug in a very annoying part of txadmin, will add to the TODO list, but it nos not top priority, unfortunately;

Just created a hotfix, i'm tested and working fine


Use sum/count instead of just sum to catch elasticsearch_cluster_health_number_of_nodes

If you have a exporter in each ES node and just sum all elasticsearch_cluster_health_number_of_nodes you will get a square of your cluster size... :grimacing:

thanks for the catch and the fix!


[Question] Can I use Cicero in Ehtereum?

(Probably this isn't the place to ask but I can't find anywhere else to do so, so if this issue should be closed I would like for you to tell me where can I ask this before actually closing it).
I'm doing a final degree thesis on smart contracts and I wanted to use Cicero, as it is agnostic, in both Fabric and Ethereum. However, I can't find any info on using Cicero in the EVM. Do you have any idea on how to do it, or in some resources I could use? Thanks in advance.

Short answer is "no".
Longer answer is that you could run Cicero off-chain and then write code to send obligations to Ethereum (this is what my employer clause.io does, for example).
Even longer term there is a project underway to compile Ergo logic to WASM code, which should (one day) be runnable on-chain in the EVM via the eWASM Ethereum project.

Okay, thank you very much for your answer, it was super clear!


Wallet crashes when exporting cvs of transactions

The qt wallet will crash when exporting csv file of transactions. The csv file does not write out successfully.

This issue no longer exists in v<IP_ADDRESS> (tested on windows 7 32bit)


Check DApp transaction gas limit

Most DApp transaction builders leave out gas limit. When you form the transaction normally gas limit = 0 gets built into the transaction. This always fails.
I notice metamask takes a '0' gas limit in the DApp transaction to mean that the wallet should use it's own default value.
You can test it on Tenzorum's TENZ-ID site here:
https://tenzorum.org/tenz_id/
try to register an ENS. You can test with testnet crypto - the gas limit gets added the same way. Even with testnet the website will report success.
I modified Android DApp browser to detect the zero gas limit and replace with the current gas limit setting.

@JamesSmartCell are you suggesting that the wallet sometimes sends tx with no gas?

yes that exactly it. Victor checked and AlphaWallet iOS failed to push the transaction because it sends tx with zero gas.
The JS in the website should be fixed to include the gas limit, however, it's not important to be right (push the transaction with zero gas because the JS told me to) only that our wallet works when people are trying to do things.
It seems that Metamask will interpret zero gas limit with the wallet default. If user tries on our wallet it just fails, if they try on Metamask it works, the developer of the website will just recommend people to use Metamask only rather than fixing their site.
I'll try to find the forum post but Bitforward say exactly this when people are struggling to use their new ENS system - only metamask works and they don't know why. I left a post with how to fix their gas setup but they don't need to take any action because it works on Metamask.

@JamesSmartCell @zhangzhongnan928 it seems that they have fixed this because it is working on my side (See screenshot below)

@JamesSmartCell @James-Sangalli > AlphaWallet iOS failed to push the transaction because it sends tx with zero gas.
Not because of zero gas, because not enough gas, by default iOS provide 90000 gas limit, but transection cost more than 140000 gas,
so the first transection failed:
https://etherscan.io/tx/0x77ab9d892f6ed32eb486d8957960a591dde2c2b92f208f09f9d6a11d0f07096b
the 2nd transection, I doubled the gas limit and it went through
https://etherscan.io/tx/0x593bb9527b1426bf246201ab8dc758908a489d46c6af9c7fc96738f7191f424a

@hboon @James-Sangalli take a look

Will attempt using this: web3.eth.estimateGas


add rollup bundler

Is your feature request related to a problem? Please describe.
add rollup bundler to build common-js and es-module.
Describe the solution you'd like

[ ] install rollup packages
[ ] add rollup bundler to build cjs and esm
[ ] change tsconfig

Additional context

rollup js

This is a step not required yet, tsc is sufficient.


Error Message: gui_mouseReleaseEventImg1

Describe the bug
When I use the brush tool and release, i get this error.
TypeError: correspondence() got an unexpected keyword argument 'isVisited'
To Reproduce
Steps to reproduce the behavior:

Go to frame 14 and use the brush tool on cell #3.

Expected behavior
A clear and concise description of what you expected to happen.
Screenshots

Desktop (please complete the following information):

Python version: 3.9
OS: Windows 10
Cell-ACDC Version 1.2.4rc8

Additional context
Add any other context about the problem here.
https://drive.google.com/file/d/1l-DFUoQ1O67zXmVMojIzuHrbuzFzH5Kq/view?usp=sharing Here are the files for you to reproduce the error
2022-03-28_16-32-39_gui_stdout.log

Oh ok that is a bug with the yeaz tracker that I never use. I will fix it today, in the meantime you can switch back to the acdc tracker (tracker menu on the top) thanks!

Ok, I fixed it. Run the command pip install --upgrade cellacdc and let me know if it works, thanks!

It works! Thanks!


Darkmode for the UI Inbox

To do: implement a dark mode for the Inbox UI

Let's use the same styles as [airy.co/docs](airy.co/docs)


Build Error

build.py: error: unrecognized arguments: --add-data=torbundle;torbundle

This was due to an outdated Tor Expert Bundle Link in my build file. Thanks for notifying!


fix(ci): add stable release workflow

:tada: This PR is included in version 1.0.0-rc.1 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


SelectionChangedCause.scribble is misnamed

Use case
SelectionChangedCause.scribble is named for the iOS Scribble feature, but as of https://github.com/flutter/flutter/pull/148784, it is also used for Android's Scribe feature.
Proposal
We should rename it to .stylusHandwriting so that it encompasses all current and future platforms that support stylus handwriting input. If it's necessary to distinguish between the different platforms, the usual TargetPlatform can be used.

I think this is something dart fix could handle, so it would automatically migrate folks to the new enum value.

Oh good point! This is probably overkill for https://github.com/flutter/flutter/issues/24722 then.

If anyone picks up this issue but needs help figuring out how to write a dart fix, feel free to ask for help!

A different approach to this is by implementing a modular and scalable migration. This can begin by decoupling platform-specific logic from the enum. Rather than embedding platform-specific meanings directly into the SelectionChangedCause enum, we can introduce a contextual mapping layer. This allows for a clear separation of concerns, making the enum purely descriptive and not tied to specific platforms.
Along with this, we can adopt gradual deprecation using feature flags and further enhance the migration process with dart fix. Additionally, future development can include creating or enhancing existing IDE plugins to highlight affected code and suggest fixes directly within the development environment.


Lesson 4 - Error using solcx - No module named solcx

Hey, Even after applying the fix that you folks have suggested, the error remains the same
As mentioned earlier I have changed the 1st line to - from solcx import compile_standard, install_solc
and also added - install_solc("0.6.0")
Using pip install py-solc-x to install solcx in the terminal window
What am I missing over here?
Thanks for our help

you don't need to do it using "pip install", just write the code "install_solc("0.6.0")" in the deploy.py file before the line compiled_sol = compile_standard()
also make sure your import install_solc in the first line

Hey, thanks for replying, Yes I have done that. Here is my code snippet
`from solcx import compile_standard, install_solc
with open("./simplestorage.sol", "r") as file:
simple_storage_file = file.read()
install_solc("0.6.0")
compiled_sol = compile_standard(
{
"language": "Solidity",
"sources": {"SimpleStorage.sol": {"content": simple_storage_file}},
"settings": {
"outputSelection": {
"": {
"": ["abi", "metadata", "evm.bytecode", "evm.bytecode.sourceMap"]
}
}
},
},
solc_version="0.6.0",
)
print(compiled_sol)`
And in the terminal window
Before running this code - pip install py-solc-x
After that Python deploy.py
I am not able to debug what am I missing.
Thanks for your help

Hello @anuragpagaria on your vscode bottom left  corner, you will have the python interpreter you are using, be sure to select the one on where you have installed py-solc-x

@anuragpagaria : I had the same problem as you and found that using the command python3 deploy.py fixed my problem.

Does @gaussiao solution work for you @anuragpagaria ?

Most likely @cromewar is correct. Please have a look on how VSC is helping with virtual python environments
https://code.visualstudio.com/docs/python/environments
First you should create a virtual env in your project directory with
on Mac python3 -m venv .venv
on Windows python -m venv .venv
VSC will ask you to use this venv for your workspace, choose "yes" (important!)
Close the terminal in VSC and open a new one, now you should see (.venv) in every new line on your terminal.
Check if solcx is already installed here with
pip freeze
if its not in the list (expected) than install it with
pip install py-solc-x
This way you will have a nice and clean python environment everytime you work in this workspace and installations or worse "uninstallation" in the global python environment won't mess with your project.

You are awesome @n4n0b1t3

for me it was changing the two lines others had mentioned, but I also had to use "python3 deploy.py" instead of the command in the video.

I added
install_solc("0.6.0")
and then used "python3 deploy.yp" in the terminal and it worked! thanks all


Migrate to Protocol v6 - ONLY MERGE WHEN v1 READY

PR checklist:

[ ] docs/ updated
[ ] tests added
[ ] an example added to examples/ (useful to demo new field/resource)
[x] CHANGELOG.md updated with pending release information

feat: Migrate to protocol v6
BREAKING CHANGE: This will mean that versions of Terraform < 0.15.4 are no longer supported

Superseded by #400


Ceylon plugin breaks Java 9 support

After installing the latest plugin #256, the IDE can't build or execute Java 9 projects.  Things go back to normal once the plugin is removed.
Error:Internal error: (java.lang.ArrayIndexOutOfBoundsException) 1
java.lang.ArrayIndexOutOfBoundsException: 1
	at org.intellij.plugins.ceylon.jps.CeylonBuilderService.createModuleLevelBuilders(CeylonBuilderService.java:19)
	at org.jetbrains.jps.incremental.BuilderRegistry.<init>(BuilderRegistry.java:54)
	at org.jetbrains.jps.incremental.BuilderRegistry.<init>(BuilderRegistry.java:33)
	at org.jetbrains.jps.incremental.BuilderRegistry$Holder.<clinit>(BuilderRegistry.java:36)
	at org.jetbrains.jps.incremental.BuilderRegistry.getInstance(BuilderRegistry.java:43)
	at org.jetbrains.jps.cmdline.BuildRunner.runBuild(BuildRunner.java:133)
	at org.jetbrains.jps.cmdline.BuildSession.runBuild(BuildSession.java:295)
	at org.jetbrains.jps.cmdline.BuildSession.run(BuildSession.java:125)
	at org.jetbrains.jps.cmdline.BuildMain$MyMessageHandler.lambda$channelRead0$0(BuildMain.java:236)
	at org.jetbrains.jps.service.impl.SharedThreadPoolImpl.lambda$executeOnPooledThread$0(SharedThreadPoolImpl.java:42)
	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:514)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1161)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
	at java.base/java.lang.Thread.run(Thread.java:844)

Idea 2017.1, Windows 10,  JDK 1.8u121 (system default), JDK 9-ea b165

Could you tell me what System.getProperty("java.version") returns on your Java 9 install? It looks like the version doesn't start with 1. anymore... (I suppose it should return the same value as java -version).

According to http://openjdk.java.net/jeps/223, versions since Java 9 start with 9, so I fixed the code to handle that case as well.

The current version is 9-ea.  Hopefully your fix does the trick.  Thanks.

I just told Jenkins to rebuild the plugin, you should be able to test the
fix in the next 15min :)


Enhance parse-time escape detection

Enhance the parse-time escape-detection I added the other day by detecting 'function e(){...}; return e;'.

@dotnet-bot test Windows arm_release please

@curtisman

:shipit:


Install - Check if mysite/_config/config.yml is writeable

In 3.2b1, the installer likes to write changes to mysite/_config/config.yml. We should check if this file is writeable first.
Bug:

Couldn't write to file /silverstripe-dev-3.2/mysite/_config/config.yml
breaks install process

looks legit, thanks


Add violin plots and some other minor tweaks

I added a few violin plots to show the distribution of times as well.


Add timeline and add character buttons not showing properly

The problem
Describe the bug
Add timeline and add character buttons are not showing properly. They are just small, empty squares without any text or picture. But they are clickable
To Reproduce
Steps to reproduce the behavior:

Go to the dialogic tab
Look at the buttons

Expected behavior
The button should have some sort of text and/or picture describing what they do.
Screenshots

System (please complete the following information):

OS: Windows 10
Godot Version: 4.0 stable
Dialogic2: 2.0-Alpha-6

Solutions
Workaround
None found
Possible fixes
Unsure

I have noticed that this error only exists in my older project. Creating a new Godot project makes it work as expected.

The issue was fixed by deleting old dialogic data from godot.project and removing the .godot folder. Will close.


Updating to AttoParsec 0.10

The default fresh cabal install is actually broken right now (this patch should fix it).


Automated ssh key selection

Adds a way to automatically use the ssh key of the user currently returned by "aws iam get-user".

bash in Mac OS is really old, but zsh is current. You can get both keys and values at once in the loop though which is simpler.
http://zsh.sourceforge.net/Doc/Release/Expansion.html#Parameter-Expansion-Flags
An example from StackOverflow looked like:
for key val in ${(kv)assoc_array}; do
    echo "$key -> $val"
done

I have rebased and merged this in 8275a24


Duplicate Devices Showing in Apple HomeApp for Shelly Relays

About a week or two ago, all my Shelly devices started showing up in the Apple HomeApp as two devices.
For example, my bedroom cover shows as one device with open/close control, but there’s also a second “device” with options for single/double/long press. I don’t have any buttons, so this extra device doesn’t make sense.
This happens with all my Shelly devices that have a relay. I can’t remove the second device from the HomeApp or hide it. If I add the primary device to the Home Screen, both show up.
Docker is running on RaspberryPi
Hub is the Apple HomePod
matterbridge and plugin are updated to the latest version

Hi,
the second tiles with button configuration are just the Inputs from shelly.
If you don't need/like/want them on the controller disable inputs in the plugin config, restart, wait for the controller to read again all node and they will be gone (set exposeInput and exposeInputEvent to disabled).

If I disable exposeInput and exposeInputEvent, will it affect all my Shelly devices? And will I need to reconnect all my devices after doing this?
Can you explain in simple words what these settings mean?
Here are my questions:

exposeInput has 4 options. What does each one mean?
What is the difference between exposeInput and exposeInputEvent?
What is nocacheList? Can you explain with examples?
Do I need to add all my devices to the deviceIp list? Or should I do this only if I have trouble discovering devices? If I do, should I also enable enableConfigDiscover?
I also don’t understand the postfix setting. What is it for?

The documentation and configuration are hard to understand. We need to improve the README by adding examples, detailed instructions, and clear explanations. I’d be happy to help with this once I better understand what’s going on.

Good point!
Since the dev is empty I will add better (I hope) description in the readme instead then answering here so will be for everyone if you don’t mind.
Of course any help with guides and readme is welcomed and appreciated!

https://github.com/Luligu/matterbridge-shelly/blob/dev/README.md
Let me know if something is still not clear.

https://github.com/Luligu/matterbridge-shelly/blob/dev/COMPONENTS.md


SN: Have solution for all layouts

Since it is not possible to calculate a solution for the field (#34), the solutions need to be hardcoded.
Currently available solutions:

[x] English (33)
[x] European (37)
[x] German (45)
[x] Asymmetrical (39)
[x] Hermary (39)

Done with commit: 1c4d9440a5c3f31ba4c19562aa291aaaa4352ac3


Update creating-a-package-json-file.mdx

References

The original values in this file are correct.


Descriptive Link Names

Issue #969

@mypil  No, I initially also removed the locale, but then the link does not seem to work - certainly not in Vietnam.

@KCCross - PR has been copy edited and is ready for final review. This is based on issue #969.
Thank you.
cc: @kenwith

@KCCross - We would like to follow up. Any updates on this?
Thank you.

File no longer exists. Content updated and en-us links removed.


Performance issue with webfonts

<link href="https://fonts.googleapis.com/css?family=Montserrat:400,700" rel="stylesheet" type="text/css">
<link href='https://fonts.googleapis.com/css?family=Kaushan+Script' rel='stylesheet' type='text/css'>
<link href='https://fonts.googleapis.com/css?family=Droid+Serif:400,700,400italic,700italic' rel='stylesheet' type='text/css'>
<link href='https://fonts.googleapis.com/css?family=Roboto+Slab:400,100,300,700' rel='stylesheet' type='text/css'>

I think we don't need all these ?

I agree, it's too much. (It was the Agency template's default.)
I could revert to plain old Helvetica, but...
If someone with better typographic expertise than me wants to tweak this part, the light is green. ;-)

As an aside, it seems that webfonts might be content-blocked in the future.
Exhibit A: Peace, a content blocker for iOS 9, has an option to disable them:
http://www.marco.org/2015/09/16/peace-content-blocker

Monserrat is not used anymore, AFAIK. So we should remove the link.
@borisrorsvort Would you like to keep using Kaushan, Droid, and Roboto for the current design?

For me 2 fonts is a maximum. Ill try two review the situation and make a proposal asap


[Question] Confusing about how to "Using a native SSL provider"

As in README.md, to use a native ssl provider, I just need to

Use pushy v0.8.1
Add netty-tcnative at least Fork22

<dependency>
    <groupId>io.netty</groupId>
    <artifactId>netty-tcnative-boringssl-static</artifactId>
    <version>1.1.33.Fork23</version>
</dependency>

Add latest alpn-api as runtime dependency

<dependency>
    <groupId>org.eclipse.jetty.alpn</groupId>
    <artifactId>alpn-api</artifactId>
    <version>1.1.3.v20160715</version>
    <scope>runtime</scope>
</dependency>

But I still has this exception:
Caused by: java.lang.RuntimeException: ALPN unsupported. Is your classpatch configured correctly?...

If I add alpn-boot to boot classpath, then it runs just fine, but (of course), it uses JDK SSL instead of native SSL:
c.r.p.a.ApnsClientBuilder [ApnsClientBuilder.java : 377] Native SSL provider not available; will use JDK SSL provider.

So exactly what can I do to use native SSL? With pushy v0.8, I don't even need to add neither alpn-api as runtime dependency nor alpn-boot to boot classpath.
// I'm building the project in macOS 10.12.

Adding netty-tcnative-boringssl-static as a dependency should Just Work™. Please see #379 for some sample code that can help us understand what's going wrong here.
One very likely problem, though: are you trying to run your application inside Tomcat?

Closing due to lack of information. @kientux we'll happily re-open this if you can provide some more information!

Oh sorry, turn out it's just some messes about my dependencies that makes it failed to work. Just add netty-tcnative-boringssl-static is enough as you said!


Upload and Download transfer rates values

Hi!
Just a question, it was not supposed to be the TX and RX bytes sided with iface name in Network session?
download_transfer_rate.sh and upload_transfer_rate.sh scripts returns values correctly, but on web frontend they don't.
This is right?
Thanks in advance!

@gklipel Thanks for posting the issue. Can you provide more detail?

What are you seeing on the front-end?
What specific type of discrepancy are you seeing? Is it a delay? Is it a difference of exactly X order of magnitude?
How are you verifying either end's correctness?

With that information, I might be able to understand the problem better.


Add package for Folly (z-machine interpreter)

:wave: This is a new package for the interactive fiction interpreter I've been working on, https://github.com/bkirwi/folly
I've developed it entirely on RM2, though @Eeems was kind enough to test on RM1 a while back. I've checked that the package installs on my tablet, and I've spent quite a lot of time running the software itself, but let me know if there's more specific testing I should take on.
Note that this autocreates the ~/folly/ directory, and adds a few files to it, if it doesn't already exist. Happy to configure or change that if that path seems inappropriate.
I've also made a small quality-of-life change to builder.py, printing the hashes that don't match, since that makes spotting errors or updating the file somewhat easier. (And gitignoring .venv, since that's not checked in.)

looks awesome, can't wait to try it out! is FOLLY_ROOT set to /home/root/folly here? (or is it now in /opt somewhere?)

Yeah, apologies, should have updated this PR when that was found! Agree that the PR you linked is intended to fix... I should get an update in this PR within a day or so.

Ah. Seems that raisjn's review is still outstanding.

i think setting the FOLLY_ROOT to somewhere in /opt/ makes sense

@raisjn, are you considering it okay to merge despite default stories being installed to  /home/root/folley? I don't really have a strong opinion regarding this. You call.

Package works well on the rM 1 now! Nice tutorial!

Thanks, and glad to hear it!

Please remove the majority of comments from the package file.

Done!

Next time it would also be nice to have the .env and builder.py changes be a separate PR. But I don't mind it this time.

Noted!

Yeah. There is no real standard yet. I put saves/configs of my games into /home/root/.config/<name>. Of note is that I never have any of these files in my package, so they're either created by the app or an configure script.
As for plato, I preferred this folder to make it easier for users to find. But I only create it in the configure script and don't have the package maintain that folder (or files in it) directly. Since you have default files, I'm not sure whats best to proceed here. Maybe put these files into a default location (like /opt/usr/share/folley) and let the configure script do a symlink to the current location the first time.
Opkg seems to be not that particular about stuff especially if new folders are creates, but having default fails technically be managed by the package manager, might cause some problems if people just delete them later.

Yeah. There is no real standard yet.

Technically the XDG standard does exist, and we just use /opt as the root instead of / for any paths outside of /home in that standard.

For end-user friendly ness (who don't necessarily know to look in some hidden subfolder), having it obvious findable when using a file manager is helpful though. My main concern is whether it is good from a packaging standpoint to have files lying around that a user thinks he should delete and the package manager thinks, it alone should manage them.

Technically the XDG standard does exist [...]

For sure -- I just meant that it wasn't consistently followed. But it sounds like that's the way to go here... I'll follow up with that change.

For end-user friendly ness (who don't necessarily know to look in some hidden subfolder), having it obvious findable when using a file manager is helpful though.

Definitely my original motive for the choice! But I appreciate that not everyone wants their home directory cluttered, and I'm optimistic that it won't be too much of an issue in practise.
Thanks everyone for weighing in!

can you clarify what directory for saves you went with?

For sure - all user data (including saves and any other files that the app creates) are now stored under ~/.local/share/folly.


Please add my website (https://www.guyu.me/) to user.md.

Thanks for using Congo, @wizardbyron! I'll merge this change in and your site will appear on the public list when the next theme release is published.


FCMA performance needs further investigation

Not necessarily an issue, but the FCMA classifier was predicting on 2k voxels at ~3 seconds / TR on an AWS c5d.9xlarge, which is a pretty beefed up machine by EC2 standards. Of course, it was a VM running on a shared host with who knows what underlying, but something to look into.

I don't quite remember the numbers I got before. H]On how many TRs do you compute the correlation? Can you split the 3 s into correlation, normalization and classification? Thanks!
BTW, c5.9xlarge is supposed to use an exclusive Skylake CPU with 18 cores, so the conflict between it and other VMs should be minimized.


Connection conflict when connecting to a DBeaver Database

Description
Our team is currently using DBeaver as our preferred visualization tool for working with our database. However, we also have a requirement to modify the database programmatically using a Python script.
The problem we encountered is that when DBeaver is connected to the database, our Python script fails to establish a connection. We would like to find a solution that allows us to use DBeaver for visualization and have the ability to modify the database concurrently from a Python script.
Please let us know if there are any specific configurations or settings we need to adjust in order to achieve this simultaneous connection.

DBeaver Version
23.0.4
Operating System
Windows 10
Database and driver
No response
Steps to reproduce
Connect to the database using DBeaver
subprocess.call(['net', 'use', 'Z:', '\\IP.SERVER\d$'])
conn = duckdb.connect(database=r"Z:\Database_EM\Database\QEM")
Additional context
No response

Hello @Maximelmr539
These discussions may be helpful for you.
https://github.com/duckdb/duckdb/discussions/3096
https://github.com/dbeaver/dbeaver/issues/18202
If I understand correctly, you can not write from two different connections in the DuckDB database file.

Hello @LonwoLonwo
Thank you very much, it seems indeed it is impossible to mix read-write and real only connections.
Thanks again for your help!

Can I close the ticket, then? Or do you have another question?


Incorrect results for Periodic Notes and Dynamic Highlights

For Periodic Notes: your plugin suggests upgrading from 0.0.17 → 1.0.0-beta.3. When you click nothing changes and your plugin continues to suggest this upgrade, even when restarting Obsidian.
For Dynamic Highlights: your plugin suggests upgrading from 0.3.1 → 0.2.5. When you do this the plugin will no longer load. Luckily I backed up my settings 🙂

Fixed both issues, thanks for reporting
No need to update this plugin since it was a backend change

Working great on my end, thank you! This is a very cool plugin!

@ms3056 you will have to download a new version (1.0.1) after all
thanks again


x/build/cmd/coordinator: store CL number in the query parameters

If the build completes, you get this message:

TryBot result not found (already done, invalid, or not yet discovered from Gerrit). Check Gerrit for results.

If we stored the CL number in the URL (for example commit=deadbeef&cl=123456), and we couldn't find the commit number, we could assume the build is complete and either redirect you back to it, or provide a link to the right CL from the complete farmer build.

This sounds related to https://github.com/golang/go/issues/10313#issuecomment-528017232.


Initial tests

Some basic tests done with espresso

@iojichervo thank you also for initiating the test with espresso.
Kudos to you.


removed unnecessary duplicates

Coverage remained the same at 79.798% when pulling 513fed5bb134836959e8604d39db174182f6262d on plugins-cleanup into 08695a09a36142a0bdbb2148eb19876c0fb5a852 on master.

Coverage remained the same at 79.798% when pulling 513fed5bb134836959e8604d39db174182f6262d on plugins-cleanup into 08695a09a36142a0bdbb2148eb19876c0fb5a852 on master.


Register package

Package to be registered
@JuliaRegistrator register()
Release notes:
First release. Mostly draft functionality in place.
Initial feature discussion

Parametric measurement based quantum computing (MBQC) using QuEST.jl (which calls QuEST, a C library)
Conceptual implementation of separate quantum computers for univrsal blind quantum computation
Noise model: damping, dephasing, depolarising and Pauli noise is available on single qubits
Noise models can be used in composition of other models
Verification algorithm implemented from Verifying BQP Computations on Noisy Devices with Minimal Overhead

Error while trying to register: Changing package names not supported yet

Package to be registered
@JuliaRegistrator register()
Release notes:
First release. Mostly draft functionality in place.
Initial feature discussion

Parametric measurement based quantum computing (MBQC) using QuEST.jl (which calls QuEST, a C library)
Conceptual implementation of separate quantum computers for univrsal blind quantum computation
Noise model: damping, dephasing, depolarising and Pauli noise is available on single qubits
Noise models can be used in composition of other models
Verification algorithm implemented from Verifying BQP Computations on Noisy Devices with Minimal Overhead

Registration pull request created: JuliaRegistries/General/101376
Tagging
After the above pull request is merged, it is recommended that a tag is created on this repository for the registered package version.
This will be done automatically if the Julia TagBot GitHub Action is installed, or can be done manually through the github interface, or via:
git tag -a v1.0.0 -m "<description of version>" b4c6605d10b1dec382d8ebf1a9fd56d9a2a24ea0
git push origin v1.0.0


Exclude (or note) any books which are paused

Done for Cryptopia, how do the other exchanges handle this?
Add periodic refresh.
And an event for when the status changes?

Done for Cryptopia, how do the other exchanges handle this?

Plus event on book paused or on coin issue

Added for all current exchanges.

Status and events exposed.

Done and done.


implement github actions for helm chart

Inspired by this example repo, this PR should implement GitHub Actions support which will:

For every PR impacting the helm chart, a linter will make sure that the change passes linting which includes forcing a version bump on changes)
For every PR impacting the helm chart, a 'kubernetes in docker' (KIND) cluster will be temporarily created and the chart will be installed to that test cluster to ensure that it installs properly
For every merge to master impacting the helm chart, automation will package the chart, update the index.yaml on the gh-pages branch, and cut a github release with the packaged chart for reference as a chart repository.

ACTION REQUIRED:

Github Pages should be enabled within the repo settings. Please use the default gh-pages branch
Create a gtihub personal access token with repo permissions scope, make note of the token
Create a new repo secret (accessible within the repo settings) named CR_TOKEN with the value being the github access token created above

This should go towards completing #38.  Another PR will arrive with cleanup to the gh-pages branch and a PR will need to be created on the helm hub to formally add this new repository & associated chart to https://hub.helm.sh/

@munnerz could we look at the actions required in this PR to review and merge?

bumping for re-exposure, @munnerz!

@munnerz bumping this PR. It would be incredibly helpful to have a repo that Helm can directly interact with.

Given the way GitHub Pages associates a user account to a single pages site, I'm not sure if using my own 'namespace', tied to this single repo, is the best way for me to publish charts. It seems like it'd make more sense to have a munnerz/charts repository which is published with GitHub pages, or otherwise have a dedicated kube-plex org (in which case having this repo be the primary 'pages' repo makes a lot of sense).
I'm also cautious that it puts my name next to it, and given my limited involvement in the project so far means:

it detracts from other people's contributions to this project
associates my name with the actual project itself more tightly, and with the way it is currently structured, ties 'my' Helm chart repo to this project too.

In order to move forward with this (as I really appreciate the work you've put in, and can only apologise for it taking so long to write this comment), I see two options...

move the kube-plex repository into its own organisation, which will allow us to create a dedicated Helm chart repository for it

I set up the time to create munnerz/charts, and we either move this project over to a subdirectory there or otherwise set up some automation to publish to that repository whenever a change here is made.

I think the path of least resistance is probably (1), as it requires minimal amounts of my time and involvement, and reduces the 'binding' to my name and GitHub account.
(2) seems like a fairly 'correct' solution, but I'm conscious it may delay things even further 😅

Thanks for chiming-in @munnerz!  I propose option 1 with a list of org & repo maintainers chosen by you.  Obviously this repo and a new 'charts' repo would be the first two repos for a new org.
Another idea to consider is that some folks already created a k8s-at-home organization and I've been thinking about asking to migrate all of the charts in my 'personal' charts repo to this more generically org for many of the same reasons you cite about having things associated with your own name.

FYI there is a plex helm chart hosted in the k8s-at-home github org: https://github.com/k8s-at-home/charts/tree/master/charts/plex


Use a separate service for the MCS host

The initial attempt at adding the Kubernetes Multi-Cluster Services (MCS) ClusterSet host (clusterset.local) revealed that Istio relies heavily on the property that there be 1 hostname per service.
This PR reverts some recent work that added the MCS hostname to model.Service. This PR splits out the MCS host into a separate model.Service that is synthetically generated by the ServiceImportCache. This synthetic service is updated whenever the real service is updated, or whenever there is a change to the associated ServiceImport resource.
Please provide a description of this PR:

@nmittler: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

lint_istio
82e5323d250d618995e62945978a044ec40cf0b7
link
true
/test lint_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@nmittler: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

lint_istio
82e5323d250d618995e62945978a044ec40cf0b7
link
true
/test lint_istio

gencheck_istio
82e5323d250d618995e62945978a044ec40cf0b7
link
true
/test gencheck_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@nmittler: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

lint_istio
82e5323d250d618995e62945978a044ec40cf0b7
link
true
/test lint_istio

gencheck_istio
82e5323d250d618995e62945978a044ec40cf0b7
link
true
/test gencheck_istio

unit-tests_istio
82e5323d250d618995e62945978a044ec40cf0b7
link
true
/test unit-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@nmittler: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

unit-tests_istio
05353c9a8a2009054b9fdf989b5b7851e9601cef
link
true
/test unit-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@nmittler: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

integ-pilot-multicluster-tests_istio
9b9ca17fd57efa8dc7e562b46ea52f80d3074bf8
link
true
/test integ-pilot-multicluster-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@nmittler: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

integ-pilot-multicluster-tests_istio
1b5ab11d2b81303d2bfbffb0ff17750858b72108
link
true
/test integ-pilot-multicluster-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@nmittler: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

integ-pilot-multicluster-tests_istio
1b5ab11d2b81303d2bfbffb0ff17750858b72108
link
true
/test integ-pilot-multicluster-tests_istio

lint_istio
31a345d7dc149f19952ecf1fcb48ad2679053b92
link
true
/test lint_istio

gencheck_istio
31a345d7dc149f19952ecf1fcb48ad2679053b92
link
true
/test gencheck_istio

unit-tests_istio
31a345d7dc149f19952ecf1fcb48ad2679053b92
link
true
/test unit-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@nmittler: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

gencheck_istio
ee6523e7ff48e3d75a2a6e337d3ebfdd0c9b82f0
link
true
/test gencheck_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@nmittler: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

gencheck_istio
ee6523e7ff48e3d75a2a6e337d3ebfdd0c9b82f0
link
true
/test gencheck_istio

lint_istio
ee6523e7ff48e3d75a2a6e337d3ebfdd0c9b82f0
link
true
/test lint_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@nmittler: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

integ-pilot-multicluster-tests_istio
42158f58bfb60105360c07058ecc04fc5f5ec57e
link
unknown
/test integ-pilot-multicluster-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/retest

@jacob-delgado

lgtm, looks like a lot of things are getting reverted and cleaned up

Yeah, this actually simplifies things a lot. I'll also be following this with a PR to revert the introduction of Service.ClusterLocal, moving the hostname and vips back to the top-level. Didn't want to do it here since it would make a big ugly diff even bigger and uglier.


can we turn on posting moderation for the forum

tired of the spam.  can we turn on moderation
users with reputation < 2 or posts <3
I think that is the default

no feedback, or comments??

do you mean this setting?

yes, set rep to 2.

Done!

thanks.. its working


Remove Striped64 and LongAdder when switching to Java 8

No real timeline on this, either.
(c.f. ffeed35b063d9be1f3d69ff7d1272612f95b60db)

I think you can replace UNSAFE with AtomicLongFieldUpdater for Cell's value, AtomcLong for Striped64's base, and AtomicBoolean (or AtomicInteger) for Striped64's busy.

Striped64 also hold a reference to ThreadLocal in its actual form.
If you have a look to the latest JDK8 implementation source code this has been removed.
I'm pretty sure this can lead to the same issue discussed in #742 .

I was surprised but I agree.
In order to avoid holding a specific class via Striped64, it might be fixed by making ThreadHashCode extend ThreadLocal<int[]> (with int[1]) instead of ThreadLocal<HashCode>, which is just used to hold a mutable hash for each thread.


Abandoned?

What is the state of this gem?
@arthurschreiber, @bicycle1885, @BurntSushi, @edwindj, @jaredgrubb, @johari, @kbatten, @kblomqvist, @keleshev, @kipanshi, @mboersma, @oprypin, @ryanartecona, @shabbyrobe, @voieducode.
Sorry for mass-mentioning, but we have to decide something about it.

@ryanartecona do you want to be maintainer so far? : )

I'm not able to do any maintenance on this port, but if you need anything from me I am at least contactable! :)

Apologies for the delay. I am not really interested in maintaining this gem, just in getting #26 merged. :) On the other hand, what work will maintaining really require, if the python implementation hasn't seen any significant updates past 0.6.2 in over 2 years?

Docopt.rb lives! New version posted to rubygems, I'll be actively reviewing PRs and releasing etc


Turn on feature toggle for DAQmx

What does this Pull Request accomplish?
Turns on feature toggle for DAQmx.
Note that we should wait until the features are Closed to put this in; I'm just getting it ready.
Why should this Pull Request be merged?
DAQmx is (nearly) done and ready to go.
What testing has been done?
Verified that while running the server without any config file I was able to call DAQmx methods.

Do update this table with DAQmx entries when you push this in.

Turn on feature toggle for DAQmx


Create Project Success metrics

Open Source Project Success Metrics Framework
Objective: Craft a framework that outlines what a “successful” open source project looks like in objective (and perhaps some subjective?) ways, and what potential actions communities can take to increase their chances of being a successful project.
If we’re speaking only about “metrics” then we should look to implement CHAOSS. That project has just recently released their 1.0 of open source health metrics.
It is also important for communities to be clear that “what is successful” for a project will change over time.  Projects naturally mature over time, and move to LTS releases where, depending on demand for the project, may mean less activity.
State assumptions on what kind of project the founders want it to be.
Sometimes, founders want to open source something just because they found it valuable and thought others could use it, and that’s the end of it.  Other times, founders want a project that can take the journey from first release/MVP to a mature product with many releases and new features added over the years.
This framework will assume the latter and for the sake of that assumption, we will work to lay out what a successful and healthy open source project looks like in today’s software development world.
Active founders (>1?)
Active maintainers (>1?)
Active contributors (>1?)
How to measure “active” without (or with?) something like CHAOSS implemented?
Healthy backlog of issues?  (>? How many issues already identified/approximating a product roadmap?)
Has the project made it to a 1.0 release?
How many stars/forks (over time? Maybe per year?) (CHAOSS)

Another comment to add:
Does a project include a clear onboarding/get involved process.  Often, this is as simple as flagging issues in Github as "Good First Issue" and giving some direction.

@mpgjon Good stuff! Would you mind incorporating in process/success_metrics.md

I'll make some time to discuss this in the TAC meeting.

Hi Dan, can you lmk what TAC meeting you would like to address this in, so
I can try to block out time with the day job?
Thanks!
Jon
On Wed, Oct 23, 2019 at 3:31 AM Daniel Heckenberg<EMAIL_ADDRESS>wrote:

I'll make some time to discuss this in the TAC meeting.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/AcademySoftwareFoundation/tac/pull/93?email_source=notifications&email_token=AETQEH4RAIVPWDPNKZ4VSSDQQARXRA5CNFSM4I3SNXP2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOECA5FWQ#issuecomment-545379034,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AETQEH4FPJEFEH3PGWZAD4TQQARXRANCNFSM4I3SNXPQ
.

Hey @mpgjon - seeing what next steps are here. Wondering if you wanted to incorporate your suggestions into the file?

Closing this - will re-open as a new PR


Autoloading using composer

We would like composer to take care of autoloading the classes in the library, but as we found it's not PSR-4 compliant, and we would prefer not to require/include each file one-by-one.
Is there a recommended approach we should take?
Should we decide to fix the PSR compliancy issue, would you be open to merging it?

Hi @martonkaufmann. We apologize for the inconvenience. We have gone ahead to make it PSR-4 compliant. Please update the package. Lastly, please fill free to contribute to the project in order to make it better. Thanks


no hyphen in "stake pool" and no such thing as "staking pool"

There are no hyphens in terms like "Know-Your-Customer" either, but we are only responsible for correcting the spelling & usage of Cardano & blockchain terms.

🤓🙏


Change subscriber notifications to be sent less frequently

Ideally, we wish to send notifications to subscribers when orcas are first detected. We do not wish to send notifications on a timer.

There can be a maximum of 15 minutes delay from when orcas arrive and when the notification should be sent.
Some state tracking might be necessary across function runs.

Also, please do some cleanup:

Rename ModeratorEmail to SubscribeToModeratorEmail
Rename SubscriberEmail to SubscribeToSubscriberEmail

A related issue is we now seem to be limited to about 9-11 emails per day.  That means that if we hit the limit on moderator emails, we can't send out subscriber emails.  It also means that if whales pass by the hydrophones more than once per day, moderator emails don't go out for the second pass.  This is a serious problem that needs immediate attention.

To clarify point one, moderator emails should go out immediately for every detection, even though this means moderators could receive dozens of emails.
With subscriber emails, one should go out immediately when the first detection is confirmed.  After that, about every 15 minutes, it would be good to send out an email indicating the whales are still there (the most recent detection), or there were no detections in the last 15 minutes.  Subscribers don't need to get the update for every one minute segment.


How can I export null value to excel and later read the null back into memory?

Some fields in our db are like this:
{
"asset_id" : null,
}

We want to do a roundtrip to export->modify->import fields, but when export to excel, it becomes blank, like:

asset_id
other fields

(blank)
some value

Later when importing from this excel, the asset_id is totally missing. When comparing, the new imported value of asset_id(actually missing) is not equal to the old value(null) and it'll generate an update. We think this is an unconsistency and an unnecessary modification.

Does anyone know a proper way to export and import a null value to avoid the above situation?

Yes, there is currently some loss of information around null/undefined.
In theory, the lossless way to do this is to write the error #NULL! for values that are explicitly marked as null.  In the cell model, it is represented as {t:"e", v:0x00}.  The json_to_sheet function would have to write the null value and the sheet_to_json function would have to interpret the error as a null value.  Would that be a better approach?

@SheetJSDev  thanks for quick response.

How can I export {t:"e", v:0x00} in json_to_sheet and correctly recognize them in sheet_to_json ?

And for array type fields in db, like:
{
photos: [ ] / not-set / [ null ]
}
How to do that?

If the question here is how to get sheet_to_json to not use the string "NULL" but instead the null value, I have the same question.

An option nullError will be added to aoa_to_sheet / json_to_sheet / sheet_add_aoa / sheet_add_json to control interpretation of null values when reading data.  sheet_to_json will always write #NULL! cells as null


Some problem with setTimeout()

when I exec fellow code:
console.log(1)
setTimeout(function () {console.log('a')}, 10);
setTimeout(function () {console.log('b')}, 0);
var sum = 0;
for (var i = 0; i < 1000000; i ++) {
sum += i;
}
console.log(sum);
setTimeout(function () {console.log('c');}, 0);
The result same has some problem , it different with brower's results.
My English is not well , sorry

Try adding // noconflict to the js.


Assign port_index of CXL_IDE_QUERY_RSP with the port_index of QUERY request

Fix #377

Please add your Signed-off-by: tag


DirectionalLight3D shadow flickers when the camera moves or changes FOV

Godot version
4.0 Beta 14
System information
Windows 10, Vulkan, Nvidia RTX 3060 Ti
Issue description
If the camera's FOV is animated (for example while sprinting in an FPS game) the shadow flickers. This is most noticeable when the shadow is cast through high frequency alpha tested materials like the leaves of trees.
This problem is made worse as soon as the player gets a bit further from the world origin, likely due to some floating point precision problems. At a relatively small distance of only 500m from the origin there is noticeable flicker of foliage shadows even when the camera is simply moving around normally. It becomes extreme as soon as the camera's FOV changes.
This makes it really difficult to have even a modestly sized outdoor environment without shadow issues.
https://user-images.githubusercontent.com/2095704/214502579-8eb2ea3b-7ca1-457d-8d16-b75c410a567e.mp4
The directional light's settings are pretty standard:

Steps to reproduce
From scratch

Create a plane with noisy alpha tested material (like foliage leaves)
Create a directional light with shadow
Move parent node 500m from the origin
Animate the camera's position, rotation and FOV

In example project

Run project
Use WASD keys and mouse to move the camera
Hold SHIFT key to change FOV

Minimal reproduction project
shadow_flicker_bug.zip

Which renderer are you using?

This is an expected issue, which I could reproduce while adding dynamic FOV (depending on car speed) to the Truck Town demo. I worked around this by not changing the camera FOV at low enough speeds. This makes the issue harder to notice as shadow flicker will only occur at high speeds.

@Calinou
Your maximum FOV proposal sounds like a nice solution for most FOV animation use cases.
To be clear, the shadows in my example are not cast through an Alpha Hash material, it's through an Alpha Scissor material. Changing it to Alpha Hash does indeed make it very jittery. I actually like the quality of the Alpha Scissor shadows, my issue is that even that jitters when the camera is a few hundred meters from the world origin.
Turning off Blend Splits makes no difference, it still flickers the same.

Has there been any progress on this?

To my knowledge, nobody is currently working on this. The comment I wrote above still stands and could be implemented.


Ideas: highlighted text actions

You can highlight text and easily make it bold or put it in a spoiler tag

Here's a quick mock up I made using inspect element

You can do this with normal discord

You mean manually add the elements to your text? I meant for this to be a shortcut

You mean manually add the elements to your text? I meant for this to be a shortcut

You can do Italics and Bold using Keyboard shortcuts, but yeah shortcuts wouldn't hurt.

You mean manually add the elements to your text? I meant for this to be a shortcut

You can do Italics and Bold using Keyboard shortcuts, but yeah shortcuts wouldn't hurt.

Select text, and then double click it.

Oh uh, yeah @Oj18 or @hax4dazy, you should close this PR. The module you're describing is literally a feature in Discord already.


Add invalid and disabled to form components

Sort of touches on #497

Also, conflicts in number.component @youda97


[bug] meta isn't properly typed

Describe the bug
A clear and concise description of what the bug is.
The res.meta object returned by, for example, api.v2.listTweets isn't properly typed:

To Reproduce
Please indicate all steps that lead to this bug:

Try to access res.meta when using Typescript.
See Typescript error.

Expected behavior
A clear and concise description of what you expected to happen.
The res.meta object should be properly typed so that I can safely access the next_token and previous_token (to store them in a shared Redis cache that is referenced by all serverless function invocations).
Version

Node.js version: 16.14.0
Lib version: 1.11.1
OS (especially if you use Windows): Ubuntu 20.04 LTS

Additional context
Add any other context about the problem here.

Hello,
This isn't a TypeScript error, this is just a property with a any typing.
But you're right, it is a typing mistake.

Fixed on master branch :)
I will be fixed when 1.11.2 is out, but awaiting #229 to be clarified before pushing to npm.

Now available on 1.11.2 😄


Add docs describing the metadata format

As discussed, this starts some docs on what is going on with all the little files everywhere

Looks great, would be useful to also add a few comments about when metadata, location info get written to and what they are used for

Could you expand on what you are thinking here?

Looks great, would be useful to also add a few comments about when metadata, location info get written to and what they are used for

Could you expand on what you are thinking here?

 Metadata also written when we pull outpack_location_pull_metadata or when we pull a packet outpack_location_pull_packet (I think). We write to location metadata on outpack_location_pull_metadata
And when we use this metadata and location information. We use metadata to use another packet as a dependency outpack_packet_use_dependency. But not sure actually what functions use the location info? Maybe just exists as a record instead of being something we use somewhere?


support deleted files in kusion deps cmd

1. Does this PR affect any open issues?(Y/N) and add issue references (e.g. "fix #123", "re #123".):

[X] N
[ ] Y

2. What is the scope of this PR (e.g. component or file name):
pkg/kusionctl/cmd/deps/options.go
3. Provide a description of the PR(e.g. more details, effects, motivations or doc link):
before the PR, the in-existing file paths as --focus option is not allowed in using the kusion deps command to find downstream stacks/projects and the in-existing file paths will cause an "invalid focus path" error.
This PR support deleted files in kusion deps --focus option, and slightly improves the performance of that command.

[X] Affects user behaviors
[ ] Contains syntax changes
[ ] Contains variable changes
[ ] Contains experimental features
[ ] Performance regression: Consumes more CPU
[ ] Performance regression: Consumes more Memory
[ ] Other

4. Are there any breaking changes?(Y/N) and describe the breaking changes(e.g. more details, motivations or doc link):

[X] N
[ ] Y

5. Are there test cases for these changes?(Y/N) select and add more details, references or doc links:

[X] Unit test
[ ] Integration test
[X] Benchmark (add benchmark stats below)
[ ] Manual test (add detailed scripts or steps below)
[ ] Other

This PR adds some unit tests and benchmarks on the core logic about down stream stacks/projects analyzing.
This PR brings some reduction on memory usage result based on the testdata and brings about 50% time and memory consumption base on a 2000+ stacks Konfig repository.
benchstat result on processing downstream stacks/projects of the testdata:
DownStream-4    5.73ms ±40%    4.52ms ±14%     ~     (p=0.222 n=5+5)

name          old alloc/op   new alloc/op   delta
DownStream-4     241kB ± 0%     196kB ± 0%  -18.81%  (p=0.008 n=5+5)

name          old allocs/op  new allocs/op  delta
DownStream-4     2.04k ± 0%     1.58k ± 0%  -22.44%  (p=0.008 n=5+5)

benchstat result on procession a 2000+ stacks Konfig repository:
name                             old time/op    new time/op    delta
KonfigTotal_siteBuild_simple-4      15.7s ±16%      6.9s ±36%  -56.00%  (p=0.008 n=5+5)
KonfigTotal_siteBuild_complex-4     18.0s ±14%      9.6s ± 9%  -46.79%  (p=0.016 n=5+4)

name                             old alloc/op   new alloc/op   delta
KonfigTotal_siteBuild_simple-4     1.04GB ± 0%    0.33GB ± 0%  -68.13%  (p=0.008 n=5+5)
KonfigTotal_siteBuild_complex-4    1.04GB ± 0%    0.42GB ± 0%  -59.65%  (p=0.008 n=5+5)

name                             old allocs/op  new allocs/op  delta
KonfigTotal_siteBuild_simple-4      7.12M ± 0%     2.78M ± 0%  -60.88%  (p=0.008 n=5+5)
KonfigTotal_siteBuild_complex-4     7.12M ± 0%     3.27M ± 0%  -53.99%  (p=0.008 n=5+5)

6. Release note
support deleted files in ```--focus```option. of the ```kusion deps``` command.

Coverage decreased (-1.07%) to 71.514% when pulling 91e7fe0f93b9bc27b2029307fe2b83c1cdcdb075 on dev/xiarui.xr/deps-support-deleted into c01d4532b733c5de611b9da50c2303a11df5b537 on main.


Omitting struct variables in storage declaration crashes compiler

When declaring a struct in storage and omitting the struct's contents crashes the compiler. There should be an error message to handle this case and inform the user.
forc v0.25.2
Minimal Repro:
struct MyStruct {
    my_u8: u8,
}

storage {
    my_struct: MyStruct = MyStruct {},
}

The same things happens with
const my_struct: MyStruct = MyStruct {};

This is an issue in the constant evaluator which panics when it sees the ErrorRecovery type instead of stopping and emitting the errors that have been collected so far.


[release-4.4] Bug 1817318: Add support for actual descheduler strategy names in operator config

This commit was missing from https://github.com/openshift/cluster-kube-descheduler-operator/pull/104

/lgtm


Add support to multiple comm-groups which might overlap in a single node.

Summary
Add support to multiple communication group. For same machine, enable it to be inside multiple comm groups and which can overlaped. Might cover some function in branch comm_group_init, might need to resolve conflicts.
Test Plan
Additional Notes
Should be merged after #166

Hi,
I am curious about the current status of the comm-groups. It seems I can use this to run multiple jobs on one node simultaneously. Could you provide more information on this?
Thanks,
Chenning

Need refactor for mergability


(...args: any) throws error in exported function

I need to a code that looks like this
export class Foo {
    bar(...args: any) {
        console.log(args.size)
    }
}

var k = new Foo()
k.bar("ab", "cd")

However, flow doesn't like this
(...): element of any
Missing annotation

Why doesn't it allow that? And how to make it happy?

bar(arg: any) {
      ....
}

works, and this works too
bar(args: Array<any>) {
      ....
}

I need this, so I can make a function a goal for event emitter,
For example like this
export class Foo {
    bar(...args: any) {
        console.log(args.length)
    }
}

var foo = new Foo();
var emitter = new EventEmitter();
emitter.once("event", (...args) => foo.bar(...args))

I can probably rewrite it as this
export class Foo {
    bar(args: Array<any>) {
        console.log(args.length)
    }
}

var foo = new Foo();
var emitter = new EventEmitter();
emitter.once("event", (...args) => foo.bar(args))

But I feel it's a bit strange

(I am leaving alone that emitter's on() is probably wrong in the definition, I will make it as a separate pull request :))

Thanks for the report, will fix! You can use ...args: Array as a workaround.


Fix issue #161

Coverage increased (+0.009%) to 90.713% when pulling fb727b2efade8cdbb0e3d9ce51ba651b06b4ca6f on issue_161 into d59c38627d47ea7309f9d283c77d9f29efc0e624 on master.


Standalone cluster fix: specify kube config path via CLI or KUBECONFIG env

What this PR does / why we need it
This PR fixes two issues:

Ability to specify K8s config via CLI and KUBECONFIG env for standalone clusters
Support for specifying standalone cluster context and stand alone cluster kubeconfig from CLI

Details for the Release Notes (PLEASE PROVIDE)
Fix: standalone cluster kube config can be specified with CLI or KUBECONFIG env

Which issue(s) this PR fixes
Fixes: #2076
Fixes: #2077
Describe testing done for PR
See testing steps in #2076  and #2077

The fixes in this PR do the followings

Ability to override kubeconfig, context, cluster name for all three types of clusters (bootstrap, mgmt, workload, standalone)
Introduction of standalone cluster flags that are now separated from workload cluster flags

KUBECONFIG=kind.kubeconfig ./diagnostics collect --bootstrap-cluster-skip --management-cluster-skip --workload-cluster-name test --workload-cluster-context=kind-test
2021/11/16 17:56:23 bootstrap cluster: skip=true: diagnostics will not be collected
2021/11/16 17:56:23 management cluster: skip=true: diagnostics will not be collected
2021/11/16 17:56:23 Info: Retrieving workload cluster: cluster=test; context=kind-test; kubeconfig=kind.kubeconfig;
2021/11/16 17:56:23 Info: Capturing pod logs: cluster=test; kubeconf="kube_config"(cluster_context = "kind-test", path = "kind.kubeconfig")
2021/11/16 17:56:23 Info: Capturing API objects: cluster=test
2021/11/16 17:56:27 Info: Archiving: .//workload-cluster.test.diagnostics.tar.gz
2021/11/16 17:56:27 Warn: skipping cluster diagnostics: standalone cluster: clusterName not set

LGTM


Execute callback even if visibility didn't change

        // Don't forward if no relevant infomation changed
        if (!info.changed) {
          return false;
        }

Updating from 1.x to 2.x I noticed this, which kinda ruined a use case of mine. I basically have a growing list with a spinner at the end. When the spinner is visible, the content is rendered but the spinner element is kept for further growing the list when the user scrolls some more.
Problem: if the initial value of the list sub-set is small, the spinner is immediately seen and more data rendered. If the spinner is still visible (big screens), nothing happens because effectively nothing changed in terms of visibility, but I want the callback to be called anyway.
Could you consider making this optional? I can make a PR if you agree. Thanks!

Yes I think that having it optional makes a lot of sense. Especially if it breaks use cases with 1.0. PRs are very welcome!


Treat empty directory as an empty table

https://github.com/keboola/docker-bundle/issues/323#issuecomment-396920876

fixed in 99b49d72acd942e04c8cb5323a7e867f1ba1b0ca


[FEATURE] The current visual representation of workflow benchmarks presumes a sequential workflow

Feature Description

The current visual representation, while aesthetically pleasing, does not accurately reflect the structure of the workflows. The connections between nodes, especially on the benchmark side, suggest relationships between tools that are not entirely representative when workflows are non-linear. I propose removing the links between nodes entirely.
Motivation

The existing graphical elements communicate a message, but that message is misleading. I think the graphical elements should give accurate information about the workflow structure, or be removed.
Proposed Solution

Remove the links on the benchmark representation so only the nodes are left.
Alternatives Considered

Additional Context

Here is a non linear workflow where the benchmarks suggest that idconvert and mzRecal are directly linked, though they are not in the original workflow.

From what @Ambivalentalfa has shown me, it seems these types of non-linear workflows become very common when allowing larger number of steps. What seemed a great idea at the time, may indeed be more confusing for the users. Perhaps we could comment out the part of the code that generates the edges for now?

The following suggestions were proposed in a call yesterday:

Replace lines with curved edges, allowing display of parallel edges? May get messy?
Enumerate workflow components and display the numbers in the benchmark card cartoons to make the link between the workflow and miniature representation clearer?
Reveal edges per node only when hovering over a node, but then show all of them?
Show only one “complete" cartoon with all edges, and then just display the nodes, without edges, for subsequent benchmarks?

It was also mentioned this is somewhat analogous to the benchmark table, which is also linear. Should we sort components according to their actual order of execution, such that successfully completed steps are shown above those that failed (if any)?


adding real auth to integration tests

we should remove SKIP_AUTH in justfile/_integration_test?

we should remove SKIP_AUTH in justfile/_integration_test?

yes once the other changes I'm adding work, but still waiting to make sure integration tests pass locally

we should remove SKIP_AUTH in justfile/_integration_test?

yes once the other changes I'm adding work, but still waiting to make sure integration tests pass locally

are we skipping auth for circleci integration tests?


Bug: Fix label for Likert table

Description
The bug is described in details in the issue.
Related Issue(s)

closes #1205

Verification/QA

Manual functionality testing

[x] I have tested these changes manually
[x] Creator of the original issue (or service owner) has been contacted for manual testing (or will be contacted when released in alpha)
[ ] No testing done/necessary

Automated tests

[x] Unit test(s) have been added/updated
[ ] Cypress E2E test(s) have been added/updated
[ ] No automatic tests are needed here (no functional changes/additions)
[ ] I want someone to help me make some tests

UU/WCAG (follow these guidelines until we have our own)

[ ] I have tested with a screen reader/keyboard navigation/automated wcag validator
[x] No testing done/necessary (no DOM/visual changes)
[ ] I want someone to help me perform accessibility testing

User documentation @ altinn-studio-docs

[ ] Has been added/updated

[x] No functionality has been changed/added, so no documentation is needed
[ ] I will do that later/have created an issue

Changes/additions to component properties

[ ] Changes are reflected in both src/layout/layout.d.ts and layout.schema.v1.json, and these are all backwards-compatible
[x] No changes made

Support in Altinn Studio

[ ] Issue(s) created for support in Studio

[x] This change/feature does not require any changes to Altinn Studio

Sprint board

[ ] The original issue (or this PR itself) has been added to the Team Apps project and to the current sprint board
[ ] I don't have permissions to do that, please help me out

Labels

[ ] I have added a kind/* label to this PR for proper release notes grouping
[ ] I don't have permissions to add labels, please help me out

The e2e actually went green on friday and today I only did some changes to the unit tests so not sure whats wrong with the cypress tests.


Syncing with upstream ipfs-service-provider

:tada: This PR is included in version 3.3.3 :tada:
Your semantic-release bot :package::rocket:


Move backup

This is a proposal to add a feature to node-gpt.
This PR adds a function that does two things:

move the backup GPT to another LBA.
move the end of the last partition accordingly, so that it ends at the beginning of the backup GPT.

The PR is not perfect at this point, but if you're interested in this feature I can improve it according to your feedback.
Use-case
The typical use-case for this function: to grow the last partition on a disk.
Let's think about something like the Etcher installer, that is used to install disk images to a USB media. Usually, developers will ship a disk image of a certain size, and users might install this image on a USB media of the same size or bigger.
Sometimes it makes sense to be able to grow the last partition so that it fills the media (for example, the last partition might be the home partition). Which simply translates to:

moving the GPT backup to the end
growing the last partition to the maximum size

Implementation
One decision I made in this implementation is to make the function smart enough to find out if it acts on the primary GPT or the backup GPT. This is done with var isPrimary = this.backupLBA == 0 || this.currentLBA < this.backupLBA. It seems safe to me, but maybe you would prefer two explicit functions instead, eg. moveBackupPrimary and moveBackupBackup.
Another decision I made is to bundle the two actions of moving the GPT and resizing the last partition into one function. I guess it could be separated in two functions, but it would be more complicated to implement.
Maybe there are other things questionable.
Testing it
Here's a procedure to test the grow.js example quickly (assuming you use a Linux OS).
# Create an empty file
$ fallocate -l 1G disk.img
$ file disk.img
disk.img: data

# Create a GPT partition table and one partition
$ echo -e "label: gpt\n," | /sbin/sfdisk disk.img
...
$ file disk.img
disk.img: DOS/MBR boot sector; partition 1 : ID=0xee, start-CHS (0x0,0,2), end-CHS (0x3ff,255,63), startsector 1, 2097151 sectors, extended partition table (last)

# Verify that fdisk is happy
$ /sbin/fdisk -l disk.img
...    # no error message

# Now let's grow the image
$ fallocate -l 2G disk.img
$ ls -lh disk.img
-rw-r--r-- 1 user user 2.0G Jun 16 10:14 disk.img

# Verify that: 1) fdisk is not happy 2) the partition is still 1G
$ /sbin/fdisk -l disk.img
GPT PMBR size mismatch (4194303 != 8388607) will be corrected by write.
The backup GPT table is not on the end of the device. This problem will be corrected by write.
...
Device     Start     End Sectors  Size Type
disk.img1   2048 2097118 2095071 1023M Linux filesystem

# Move the backup GPT and grow the last partition
$ nodejs ./example/grow.js disk.img

# Verify that: 1) fdisk is a bit happier 2) the partition is now 2G
$ /sbin/fdisk -l disk.img
GPT PMBR size mismatch (2097151 != 4194303) will be corrected by write.
...
Device     Start     End Sectors Size Type
disk.img1   2048 4194270 4192223   2G Linux filesystem

TLDR: The example grow.js does two things:

move the GPT backup at the end of the device, therefore gets rid of the message "The backup GPT table is not on the end of the device..."
grow the last partition so that it fills the device

Given that this basically only has a single use-case, I wonder if it'd be worth also adding an even higher-level moveBackupGPTToEndOfDisk utility function? :man_shrugging:
P.S. I don't claim to fully understand the code, but why does it explicitly exclude block devices? Does that mean that in the example Etcher use-case, you'd need to modify the disk-image before writing it to a disk? In reality you'd probably only want to modify the disk and not the original disk-image?

Given that this basically only has a single use-case, I wonder if it'd be worth also adding an even higher-level moveBackupGPTToEndOfDisk utility function?

That would require that node-gpt knows the size of the disk, which it doesn't. I tried to follow the existing logic here, which is that the library strictly deals with the GPT structure, without knowing anything else. The knowledge of where is this GPT structure (a file, a block device?) seems to be out of scope of the node-gpt library.
In order to know the size of the disk, we can do fs.fstatSync(fd), but that only works if the disk is in reality a file. For a real block device you need something else, apparently the library @ronomon/direct-io. And I don't think we want to add this dependency to node-gpt.

why does it explicitly exclude block devices?

Because to get the size of the block device you need something like @ronomon/direct-io. This is an async library, and I just don't know how to use it. Tried and failed.
Maybe there are other solutions. But for the scope of the example, I just keep it simple.
Mind you: I'm not a javascript or nodejs developer.

Does that mean that in the example Etcher use-case, you'd need to modify the disk-image before writing it to a disk? In reality you'd probably only want to modify the disk and not the original disk-image?

Indeed you modify the GPT on the disk, after writing the image to a disk. And it works for a block device. I have a fork of the etcher sdk where I added support for that. It works, but the implementation is not great (as I said, I'm not a javascript person so...)
You can see it in this commit: https://github.com/etcher123/etcher-sdk/commit/456e562451d2954e946363126a4b543f111d2f6d

I'm not a javascript or nodejs developer.

Me neither, please take my uninformed comments with a pinch of salt :slightly_smiling_face:

Hi @etcher123!
Thank you for the PR & the work you've put into this!

Another decision I made is to bundle the two actions of moving the GPT and resizing the last partition into one function. I guess it could be separated in two functions, but it would be more complicated to implement.

While I appreciate the simplicity of combining the two, it's unfortunately not desirable for a few reasons;

When writing disk images, the secondary GPT should always be relocated to the end of the disk / block device, irrespective of the partitions' sizes – this is due to 1) the specification saying so (Section <IP_ADDRESS>, EFI Partition Header) and 2) operating systems / drivers checking for a GPT at that location should the first sectors become unreadable (and if you don't relocate it you can get a conflict / incorrect partitions if there is a GPT from the previous formatting there)

If a partition's allocated space is changed in the partition table without resizing the file system as well (also, a lot of file systems do not support resizing), the file system drivers may be initialized with incorrect data (i.e. if they need to read structures at the end of the partition)

The operating system or file system drivers might deny any corrections on the above if a file system is not resizable or "too full" to be shrunken down in size, even though the extra space isn't actually used / allocated to the file system in that partition

So I would prefer relocating the GPTs and resizing partitions to be two separate actions.

Given that this basically only has a single use-case, I wonder if it'd be worth also adding an even higher-level moveBackupGPTToEndOfDisk utility function?

Hey @lurch – this would make sense in a higher level module, but this module doesn't do any I/O at all (except for the runnable examples), so wouldn't know where the end of the disk is.

Does that mean that in the example Etcher use-case, you'd need to modify the disk-image before writing it to a disk? In reality you'd probably only want to modify the disk and not the original disk-image?

Nah, you can still do any modifications / relocations after – no need to fiddle with the input disk image, it's just that this module is only concerned with parsing, modifying & encoding the GPT related data structures, not doing any I/O – so those choices are up to the program using this, if that makes sense?

Thanks for the feedback. I'll rework that to split in two functions.

If a partition's allocated space is changed in the partition table without resizing the file system as well (also, a lot of file systems do not support resizing), the file system drivers may be initialized with incorrect data (i.e. if they need to read structures at the end of the partition)

I didn't know about that, actually all I know about is the ext4 filesystem.
Just to clarify my intent: for Linux OS that boot with systemd, there's an option to automatically grow the filesystem so that it fills the partition: https://www.freedesktop.org/software/systemd/man/systemd.mount.html#x-systemd.growfs
So the scenario where the installer (ie. Etcher) grows the last partition so that it fills the device, WITHOUT resizing the file system, is actually supported and expected by systemd. The filesystem itself will be expanded when the OS is booted for the first time.
In any case, I understand that filesystem support is out of scope here.
Thanks for the feedback!

@jhermsmeier Please have a look at the updated MR when you have a moment and tell me what you think, thanks!

can i join this project please?


Support preview Repository API - read and replace topics for a repository.

GitHub Announcement: https://developer.github.com/changes/2017-07-17-update-topics-on-repositories/
It looks like there are 4 changes/additions in this announcement:

[ ] Replace all the topics for a repository.
[ ] List the topics for a repository specifically.
[ ] Topics are also available as part of the payload in the get repository endpoint.
[ ] Topics are also available as part of the payload in the search repositories endpoint.

The get repository payload may be problematic for the same reason as https://github.com/google/go-github/pull/656#issuecomment-313720527, so it's completely okay to address it later/in a separate PR.
/cc @kytrinyx FYI.

I've asked some colleagues what happens if you need multiple different preview headers for a call.

Confirmed: at the moment making a request with multiple preview headers is not supported. You'd have to make the same request with multiple accept headers.

Actually, I take that back. It looks like we may have released a fix that should let you make a call with multiple preview headers:
curl -H "Accept: application/vnd.github.mockingbird-preview" -H "Accept: application/vnd.github.scarlet-witch-preview+json"

I just confirmed with this call:
curl -v -XGET "https://api.github.com/repos/:org/:repo" -H "Authorization: token $TOKEN" -H "Accept: application/vnd.github.mercy-preview+json" -H "Accept:  application/vnd.github.drax-preview+json"
The response came back with both licenses and topics.

Awesome, thank you @kytrinyx! This is super helpful, because it would not be viable for us to make more than 1 remote API call per method, since each method is supposed to correspond to a single API call.

Hi @shurcooL
Can I tackle this one for my first contribution? Thanks in advance.

Let me know how you go @RaviTezu, I'm interested in this functionality. I have a work around, so no pressure.

Feel free to go for it, @RaviTezu, and thanks!
Take a look over https://github.com/google/go-github/blob/master/CONTRIBUTING.md to be familiar with contributing guidelines.

@RaviTezu - invite sent. Thank you!

@bradleyfalzon I have raised a PR for this. Please take a look and if there's something that can be improved, please feel free to let me know.
@shurcooL Thank you. PR sent.
@gmlewis Thank you for the invite. I have accepted it.