SSTP and L2TP/IPsec problems on the latest Ubuntu PPA Build (5.02)

Not sure what is going on. But I decided to install SoftEther on Ubuntu through the PPA which installed 5.02. After setting the VPN and testing it on VPN Cleint Pro SSTP on my Android phone which works, when I try to setup a VPN connection using SSTP on Windows 7/10 it does not work and gives a connection error. I do not know what's going on since it works fine on the Android Client but Windows does not want to work. I use a local bridge which uses my router for internet and DHCP.
Steps to Reproduce.

Set up Ubuntu Server 20.04 and the SoftEther PPA
Set up SoftEther VPN Server to your needs. Ensure SSTP and L2TP/IPsec is enabled.
Set up a local bridge to LAN for the Hub.
Connect on Android using SSTP and L2TP/IPsec successfully
Try to use Windows with SSTP and L2TP/IPsec and get an error.
Try using Linux with L2TP/IPsec (and sometimes SSTP) and get an error.
Try using iOS with L2TP/IPsec and get an error

I found a strange solution to the issue where I first connected to a SoftEther 4.36 Server running on the same machine. I then stopped the 4.36 server, started the 5.02 server (installed from PPA) and then Windows connected no problem. How is that possible? I did not test this on Linux or iOS but it's probably the same thing!
If anyone can confirm this bug or has a fix in mind please let me know. If you need more detail I can collect some log data and post it here if necessary.

Server Log on version 5.02-5180. Also to reproduce, delete VPN configuration from Windows 10 and re-create it.
2021-06-26 04:50:31.449 On the TCP Listener (Port 443), a Client (IP address xx.xxx.xxx.xxx, Host name "xx.xxx.xxx.xxx", Port number 52082) has connected.
2021-06-26 04:50:31.449 For the client (IP address: xx.xxx.xxx.xxx, host name: "xx.xxx.xxx.xxx", port number: 52082), connection "CID-14" has been created.
2021-06-26 04:50:31.469 SSL communication for connection "CID-14" has been started. The encryption algorithm name is "ECDHE-RSA-AES256-GCM-SHA384".
2021-06-26 04:50:31.499 [SSTP] xx.xxx.xxx.xxx:52082 -> xx.x.xxx.xxx:443 (TCP): Session created.
2021-06-26 04:50:31.540 SSTP PPP Session [xx.xxx.xxx.xxx:52082]: A new PPP session (Upper protocol: SSTP) is started. IP Address of PPP Client: xx.xxx.xxx.xxx (Hostname: "xx.xxx.xxx.xxx"), Port Number of PPP Client: 52082, IP Address of PPP Server: <IP_ADDRESS>, Port Number of PPP Server: 443, Client Software Name: "Microsoft SSTP VPN Client", IPv4 TCP MSS (Max Segment Size): 0 bytes
2021-06-26 04:50:33.263 SSTP PPP Session [xx.xxx.xxx.xxx:52082]: The PPP session is disconnected because the upper-layer protocol "SSTP" has been disconnected.
2021-06-26 04:50:33.263 SSTP PPP Session [xx.xxx.xxx.xxx:52082]: The PPP session is disconnected.
2021-06-26 04:50:33.263 [SSTP] xx.xxx.xxx.xxx:52082 -> xx.x.xxx.xxx:443 (TCP): Session deleted.
2021-06-26 04:50:33.293 Connection "CID-14" terminated by the cause "Connection has been disconnected." (code 3).
2021-06-26 04:50:33.293 Connection "CID-14" has been terminated.
2021-06-26 04:50:33.293 The connection with the client (IP address xx.xxx.xxx.xxx, Port number 52082) has been disconnected.

Here is a SUCCESSFUL connection from SoftEther 4.36
2021-06-26 05:00:14.818 On the TCP Listener (Port 443), a Client (IP address xx.xxx.xxx.xxx, Host name "xx.xxx.xxx.xxx", Port number 52193) has connected.
2021-06-26 05:00:14.818 For the client (IP address: xx.xxx.xxx.xxx, host name: "xx.xxx.xxx.xxx", port number: 52193), connection "CID-1" has been created.
2021-06-26 05:00:14.888 SSL communication for connection "CID-1" has been started. The encryption algorithm name is "AES128-SHA".
2021-06-26 05:00:14.938 SSTP PPP Session [xx.xxx.xxx.xxx:52193]: A new PPP session (Upper protocol: SSTP) is started. IP Address of PPP Client: xx.xxx.xxx.xxx (Hostname: "xx.xxx.xxx.xxx"), Port Number of PPP Client: 52193, IP Address of PPP Server: xx.x.xxx.xxx, Port Number of PPP Server: 443, Client Software Name: "Microsoft SSTP VPN Client", IPv4 TCP MSS (Max Segment Size): 0 bytes
2021-06-26 05:00:14.969 On the TCP Listener (Port 0), a Client (IP address xx.xxx.xxx.xxx, Host name "xx.xxx.xxx.xxx", Port number 52193) has connected.
2021-06-26 05:00:14.969 For the client (IP address: xx.xxx.xxx.xxx, host name: "xx.xxx.xxx.xxx", port number: 52193), connection "CID-2" has been created.
2021-06-26 05:00:14.969 SSL communication for connection "CID-2" has been started. The encryption algorithm name is "(null)".
2021-06-26 05:00:14.969 [HUB "myhub"] The connection "CID-2" (IP address: xx.xxx.xxx.xxx, Host name: xx.xxx.xxx.xxx, Port number: 52193, Client name: "Microsoft SSTP VPN Client", Version: 4.36, Build: 9754) is attempting to connect to the Virtual Hub. The auth type provided is "External server authentication" and the user name is "andrew".
2021-06-26 05:00:14.969 [HUB "myhub"] Connection "CID-2": Successfully authenticated as user "andrew".
2021-06-26 05:00:14.969 [HUB "myhub"] Connection "CID-2": The new session "SID-ANDREW-[SSTP]-2" has been created. (IP address: xx.xxx.xxx.xxx, Port number: 52193, Physical underlying protocol: "Legacy VPN - SSTP")
2021-06-26 05:00:14.969 [HUB "myhub"] Session "SID-ANDREW-[SSTP]-2": The parameter has been set. Max number of TCP connections: 1, Use of encryption: Yes, Use of compression: No, Use of Half duplex communication: No, Timeout: 20 seconds.
2021-06-26 05:00:14.969 [HUB "myhub"] Session "SID-ANDREW-[SSTP]-2": VPN Client details: (Client product name: "Microsoft SSTP VPN Client", Client version: 436, Client build number: 9754, Server product name: "SoftEther VPN Server (64 bit)", Server version: 436, Server build number: 9754, Client OS name: "Microsoft SSTP VPN Client", Client OS version: "-", Client product ID: "-", Client host name: "xx.xxx.xxx.xxx", Client IP address: "xx.xxx.xxx.xxx", Client port number: 52193, Server host name: "xx.x.xxx.xxx", Server IP address: "xx.x.xxx.xxx", Server port number: 443, Proxy host name: "", Proxy IP address: "<IP_ADDRESS>", Proxy port number: 0, Virtual Hub name: "myhub", Client unique ID: "EE699619BDC7A004FA95234AA44EFBA0")
2021-06-26 05:00:14.989 SSTP PPP Session [xx.xxx.xxx.xxx:52193]: Trying to request an IP address from the DHCP server.
2021-06-26 05:00:18.171 [HUB "myhub"] Session "SID-LOCALBRIDGE-1": The DHCP server of host "5C-7D-7D-3F-3A-25" (<IP_ADDRESS>) on this session allocated, for host "SID-ANDREW-[SSTP]-2" on another session "CA-1B-55-A4-8A-17", the new IP address <IP_ADDRESS>.
2021-06-26 05:00:18.171 SSTP PPP Session [xx.xxx.xxx.xxx:52193]: An IP address is assigned. IP Address of Client: <IP_ADDRESS>, Subnet Mask: <IP_ADDRESS>, Default Gateway: <IP_ADDRESS>, Domain Name: "hsd1.nj.comcast.net", DNS Server 1: <IP_ADDRESS>, DNS Server 2: <IP_ADDRESS>, WINS Server 1: <IP_ADDRESS>, WINS Server 2: <IP_ADDRESS>, IP Address of DHCP Server: <IP_ADDRESS>, Lease Lifetime: 172800 seconds
2021-06-26 05:00:18.171 SSTP PPP Session [xx.xxx.xxx.xxx:52193]: The IP address and other network information parameters are set successfully. IP Address of Client: <IP_ADDRESS>, Subnet Mask: <IP_ADDRESS>, Default Gateway: <IP_ADDRESS>, DNS Server 1: <IP_ADDRESS>, DNS Server 2: <IP_ADDRESS>, WINS Server 1: <IP_ADDRESS>, WINS Server 2: <IP_ADDRESS>

Successful Connection to the same server using version 5.02-5180 using the same VPN profile on Windows 10 after connected to SoftEther 4.36 Server first.
2021-06-26 05:05:23.267 On the TCP Listener (Port 443), a Client (IP address xx.xxx.xxx.xxx, Host name "xx.xxx.xxx.xxx", Port number 52918) has connected.
2021-06-26 05:05:23.267 For the client (IP address: xx.xxx.xxx.xxx, host name: "xx.xxx.xxx.xxx", port number: 52918), connection "CID-1" has been created.
2021-06-26 05:05:23.297 SSL communication for connection "CID-1" has been started. The encryption algorithm name is "ECDHE-RSA-AES256-GCM-SHA384".
2021-06-26 05:05:23.307 [SSTP] xx.xxx.xxx.xxx:52918 -> xx.x.xxx.xxx:443 (TCP): Session created.
2021-06-26 05:05:23.347 SSTP PPP Session [xx.xxx.xxx.xxx:52918]: A new PPP session (Upper protocol: SSTP) is started. IP Address of PPP Client: xx.xxx.xxx.xxx (Hostname: "xx.xxx.xxx.xxx"), Port Number of PPP Client: 52918, IP Address of PPP Server: xx.x.xxx.xxx, Port Number of PPP Server: 443, Client Software Name: "Microsoft SSTP VPN Client", IPv4 TCP MSS (Max Segment Size): 0 bytes
2021-06-26 05:05:24.536 On the TCP Listener (Port 0), a Client (IP address xx.xxx.xxx.xxx, Host name "xx.xxx.xxx.xxx", Port number 52918) has connected.
2021-06-26 05:05:24.536 For the client (IP address: xx.xxx.xxx.xxx, host name: "xx.xxx.xxx.xxx", port number: 52918), connection "CID-2" has been created.
2021-06-26 05:05:24.536 SSL communication for connection "CID-2" has been started. The encryption algorithm name is "(null)".
2021-06-26 05:05:24.546 [HUB "myhub"] The connection "CID-2" (IP address: xx.xxx.xxx.xxx, Host name: xx.xxx.xxx.xxx, Port number: 52918, Client name: "Microsoft SSTP VPN Client", Version: 5.02, Build: 5180) is attempting to connect to the Virtual Hub. The auth type provided is "External server authentication" and the user name is "andrew".
2021-06-26 05:05:24.546 [HUB "myhub"] Connection "CID-2": Successfully authenticated as user "andrew".
2021-06-26 05:05:24.546 [HUB "myhub"] Connection "CID-2": The new session "SID-ANDREW-[SSTP]-2" has been created. (IP address: xx.xxx.xxx.xxx, Port number: 52918, Physical underlying protocol: "Legacy VPN - SSTP")
2021-06-26 05:05:24.546 [HUB "myhub"] Session "SID-ANDREW-[SSTP]-2": The parameter has been set. Max number of TCP connections: 1, Use of encryption: Yes, Use of compression: No, Use of Half duplex communication: No, Timeout: 20 seconds.
2021-06-26 05:05:24.546 [HUB "myhub"] Session "SID-ANDREW-[SSTP]-2": VPN Client details: (Client product name: "Microsoft SSTP VPN Client", Client version: 502, Client build number: 5180, Server product name: "SoftEther VPN Server Developer Edition (64 bit) (Open Source)", Server version: 502, Server build number: 5180, Client OS name: "Microsoft SSTP VPN Client", Client OS version: "-", Client product ID: "-", Client host name: "xx.xxx.xxx.xxx", Client IP address: "xx.xxx.xxx.xxx", Client port number: 52918, Server host name: "xx.x.xxx.xxx", Server IP address: "xx.x.xxx.xxx", Server port number: 443, Proxy host name: "", Proxy IP address: "<IP_ADDRESS>", Proxy port number: 0, Virtual Hub name: "myhub", Client unique ID: "2FC8D5267DF4F9FA727229AB879E614D")
2021-06-26 05:05:24.566 SSTP PPP Session [xx.xxx.xxx.xxx:52918]: Trying to request an IP address from the DHCP server.
2021-06-26 05:05:24.858 [HUB "myhub"] Session "SID-LOCALBRIDGE-1": The DHCP server of host "5C-7D-7D-3F-3A-25" (<IP_ADDRESS>) on this session allocated, for host "SID-ANDREW-[SSTP]-2" on another session "CA-1B-55-A4-8A-17", the new IP address <IP_ADDRESS>.
2021-06-26 05:05:24.858 SSTP PPP Session [xx.xxx.xxx.xxx:52918]: An IP address is assigned. IP Address of Client: <IP_ADDRESS>, Subnet Mask: <IP_ADDRESS>, Default Gateway: <IP_ADDRESS>, Domain Name: "hsd1.nj.comcast.net", DNS Server 1: <IP_ADDRESS>, DNS Server 2: <IP_ADDRESS>, WINS Server 1: <IP_ADDRESS>, WINS Server 2: <IP_ADDRESS>, IP Address of DHCP Server: <IP_ADDRESS>, Lease Lifetime: 172800 seconds
2021-06-26 05:05:24.858 SSTP PPP Session [xx.xxx.xxx.xxx:52918]: The IP address and other network information parameters are set successfully. IP Address of Client: <IP_ADDRESS>, Subnet Mask: <IP_ADDRESS>, Default Gateway: <IP_ADDRESS>, DNS Server 1: <IP_ADDRESS>, DNS Server 2: <IP_ADDRESS>, WINS Server 1: <IP_ADDRESS>, WINS Server 2: <IP_ADDRESS>

Basically what I am saying is that SoftEther 5.02-5180 cannot accept SSTP or L2TP/IPsec clients the first time they connect. But if they have connected to that SoftEther VPN server before on an older version with one of those protocols it works fine. At least on Windows 10...
I really hope you guys can figure something out from this. I'm not a programmer but I did what I could. Based on what I can tell there is something going on during the first time connection that is causing it to fail? (Maybe some settings from SoftEther are not getting pushed to the client properly? Which explains why after it works on an older version it will work on the latest server version?) I think that's a good place to start. Let me know if anything else is needed.

I tried on win10, I had to manually adjust connection property on win side (I enabled MS CHAP v2), after that I was able to establish connection.
before such modification, I saw "628" error in windows event log

Thanks for the info!

I assume this has been fixed already. Reopen if it's not.


[Feature Request] In-App Purchases using cryptocurrency (cross platform)

Hey Ben,
I noticed your biggest issue with in-app purchases is that it's different implementations for each platform. That issue doesn't exist in the cryptocurrency space. Also, many modern cryptocurrencies have JS implementations so it shouldn't be too hard to add. One thing I would look into is if it's allowed on Apple's AppStore, but I can assure you that it is allowed on Google's Play Store.

I might be complacently missing something; but, what in app purchases?  I don't see any on android.

@unDeadHerbs There are non yet. @benawad mentioned it in his latest video.


How to debug the code locally?

I am able to run skyagi locally by following the instruction from the readme, but I want to debug the code locally by using vscode or other debug tools, how should I do? Thanks!

Hi @sunlanchang , you can use python debugger pdb to set breakpoint and debug. Hope this helps.

Maybe it's beneficial to have some tutorial setting up VScode Debugger, even thought it not part of this project's scope. Will find some to do this, thanks for the feedback! @sunlanchang

I only have a free OpenAI account, which limits me to 3 requests per minute. I'd like to modify the code to meet this requirement, such as adding sleep time to reduce the request rate. Is there a command to run the repo code locally without installing the library? For example, python -m skyagi/src/cli.py (which not works), or some other command like this. Thanks! 🫡


Proposal: Support filename plus linenum format from grep

When using the result of grep (such as ripgrep) in QuickFix, it is convenient to open it in the format "filename:linenum"
Ref: https://github.com/bogado/file-line
What about opening a file in this format and changing it to not do setpos if lnum is 0?

@yuki-ycino
I'm sorry. I did refactoring.
https://github.com/rbtnn/vim-jumptoline/commit/24e2c42c1b8b11e9e950071a44d87d8e8b9c6bd2
And I seem to fail at C:\Users\rbtnn\.vimrc:12|| on Windows.
Please fix the conflicting and consider this pattern.

I think adding this pattern to s:ps is better than your code.

@yuki-ycino I have fixed it. Please check it.

Thank you
Worked as expected


Mm 38364 download apps

Summary
Add A/B test for displaying download apps action items as a tips and next steps panel.
Ticket Link
https://mattermost.atlassian.net/browse/MM-38364
Related Pull Requests

Has server changes (https://github.com/mattermost/mattermost-server/pull/18404)

Screenshots
control:

as next step:

Release Note
Add A/B test for displaying download apps action items as a tips and next steps panel.

@annelieseklein @neallred don't these buttons do the same thing? Should we remove one of them?

Good question! I'd suggest removing the "Skip" button in the card and keep "Skip Getting Started" at the bottom. It skips over the whole tutorial. We don't really use both the "skip" and "complete" options at the same time in any of the other cards, either.


Typescript unable to find typings

Hi there, thanks for your great npm packages!
Inspecting the package.json from the recent v10 and it appears the layout has changed. Did you intend to move index.d.ts under the exports.types key? previously it was located in the root types field
I'm using the latest version of typescript and it appears that it fails to find the correct types with the new layout
Cheers!

Apologies, this was a tsconfig issue

@mattfysh Would you mind sharing what the issue was?

@perry-mitchell it was one of these, hope it works for you!
"module": "esnext",
"moduleResolution": "bundler",

I just used this hack to avoid changing tsconfig. Would need some tweaks if you plan to use other exported types though:
memoize.d.ts
declare module 'memoize' {
	import * as m from 'memoize/dist/index';
	export default m.default;
}


'auto-push' is enabled but 'github-token' is not set. Please give API token to push GitHub pages branch to remote

I already set github-token but it still reports this

Same question.
My config:
  benchmark:
    runs-on: ubuntu-latest
    needs: test
    steps:
      - uses: actions/checkout@v2

      - name: Run benchmark
        run: go test -bench=".*" | tee output.txt

      - name: Store benchmark result
        uses: rhysd/github-action-benchmark@v1
        with:
          tool: 'go'
          output-file-path: output.txt
          github-token: ${{ secrets.PERSONAL_GITHUB_TOKEN }}
          auto-push: true
          comment-on-alert: true
          comment-always: true
          fail-on-alert: true

Hi guys, I encountered the same problem, please make sure you have the secrets PERSONAL_GITHUB_TOKEN in your repository secrets setting tab.

Secrets can only be used in push action.


Server Error trying to get started on TrueNAS SCALE

Getting:  Internal Server Error  /bin/sh: 1: cannot open /dev/tty: No such device or address
Docker logs seem to show everything working but I cant connect to the webUI.

Hi! Yes, basically you need to enable tty mode for the Docker container.  However, there is a trick to do this.  I believe @antdragone figured it out in his testing with TrueNAS.  Hope he can drop some tips here.

Hi! Yes, basically you need to enable tty mode for the Docker container. However, there is a trick to do this. I believe @antdragone figured it out in his testing with TrueNAS. Hope he can drop some tips here.

Hmm, I set an environment variable tty - true but I guess that didn't do it.
I'm eager to know the right way to set it.
Once I get it up and running Id be interested in working on the helm chart. It seems straight forward as far as docker setups go.

I'm running Machinaris under TrueNAS scale, but there's a catch: you cannot specify the tty option (-t) from the interface. So I hope @guydavis removes the need for that switch in the future.
Still there's a workaround @J05hr and others can use: after adding the docker image in Apps > Installed applications, open the shell from the GUI (three dots icon > shell, doing the same under ssh didn't do it, I don't understand why) and execute
cd /machinaris
./scripts/start-machinaris.sh

This has to be done every time the docker image is restarted.
Apart from that, and I don't know if it's a Docker or TrueNAS or Machinaris problem, many times I have to click on things two or three times before getting results. It appears that the connection "hangs" indefinitely.

Haven't used the UI to for my deployments but you can enable tty on the pod by manually editing your machinaris deployment manifest and adding tty: true under template.spec.containers.
IMO Truenas Scale does charts/apps in a really weird way so you're better off making them manually instead of the UI.
Once you edit the manifest manually if you change it in the UI it will lose your changes.
Assuming your app's name is machinaris you should be able to edit your deployment by:
k3s kubectl edit deployment/machinaris-ix-chart -n ix-machinaris
You'll find something similar to the following, find the image: attribute and add in the same depth tty: true and optionally stdin: true.
  template:
    metadata:
      labels:
        app.kubernetes.io/instance: machinaris
    spec:
      containers:
      - env:
        - name: TZ
          value: Europe/London
        image: ghcr.io/guydavis/machinaris
        stdin: true # <-- optional
        tty: true # <-- required

We've done some work and Machinaris is now available in the "Official" TrueNAS SCALE apps repo, thanks to iXsystems and the TruePool.io team. Assuming you guys confirm it's working to your expectations, we can probably close this out now.
https://github.com/truenas/charts/pull/109

Big thanks to @kmoore134 for all this work, including some great documentation.


feat(trading): handle new fee types

Related issues 🔗
Closes #6752
Description ℹ
Handle new fees fields in user fills and for the estimations in the deal ticket

Agreed approach
Discounted taker fee = Sum all 6 fees
Taker fee discount = Sum all 6 discounts
Undiscounted fee = Discounted fee + taker fee discount
Taker fee discount % = Taker fee discount / Undiscounted fee
Maker rebate amount = highVolMakerFee
Maker rebate % = highVolMakerFee / Maker Fee


Corrected errors and expanded discussion

Discussed rational vs. irrational numbers, gave examples, added discussion into the difficulty in studying them as well as real world examples to exhibit their vast importance and utility.

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the master branch of freeCodeCamp.
[x] None of my changes are plagiarized from another source without proper attribution.
[x] My article does not contain shortened URLs or affiliate links.

If your pull request closes a GitHub issue, replace the XXXXX below with the issue number.
Closes #XXXXX

@BTmathic Thank you for your contribution to the page! 👍
We're happy to accept these changes, and look forward to future contributions. 📝


include --proxy configuration in 'ng new'

I'm working in a corp wich is using proxy over the network. Every time when I create a new project, I need to include .ember-cli and .typingsrc with proxy configuration. I came here with the proprosal to include proxy config in the 'ng new' command, with something like 'ng new  --proxy=http://<IP_ADDRESS>'. Thanks for the awsome tool you all made. Good work!

I think you should be configuring npm to use proxy. The cli in turn uses npm to download dependencies.
.typingsrc is not required because cli does not use typings.

There is no such functionality currently, no. It's more of a npm/typings configuration item, like @mmrath says. You can do ng new project --skip-npm to not do npm install automatically and add some configuration manually.
The webpack preview version also does not use typings anymore, so if that the only bit that needs a proxy you might consider updating.


[TB]-"Fix Hex Value Visibility and Dynamic Color Name Display in Color Palette Component"

The current implementation of the ColorPaletteAtom component has two major issues:
1)Hex Value Visibility: The hex value of the selected color is displayed in black, causing it to become invisible against dark colors.
2)Dynamic Color Name Display: When a color is selected using the color picker, the color name field does not update to display the name of the selected color.
Proposed Changes/Solution:
Separate Color Display Block: Add a block to visually display the selected color, instead of showing the color in the hex value field.
Hex Value TextField: Keep the hex value in the TextField without changing its background color to ensure visibility.
Dynamic Color Name Update: Update the color name field to correctly display the name of the selected color.
This issue aims to improve the user interface and usability of the color palette component.

@aaronreed708 can you please assign this task to me as I have already fixed the issue and created the PR.

[enhancement]

This is an example of the issue.  Notice that the hex value of the selected color is not visible in the red rectangle.

Hi @AradhyaDixit18!  Thank you for opening this issue and making your contribution!  This is certainly an issue that needs to be fixed.  However, I'm wondering if this is the best solution.  The palette is already two fields, I don't know if having a third field taking up more space is the most efficient solution.
There is also already code in ColorPaletteAtom.reflectColorPickerChangeInUI():  https://github.com/finos/a11y-theme-builder/blob/0f3e3938c00fa56b0fa26ff88206985f5dc0b724/code/src/ui/src/pages/atoms/ColorPaletteAtom.tsx#L51-L61
whose job it is to change the text color to contrast with the selected background color.  But it appears to not be working.  Could you take a look at why it isn't working?

Also, you mentioned that one of the issues is:
2)Dynamic Color Name Display: When a color is selected using the color picker, the color name field does not update to display the name of the selected color.
I kinda like the change that you made to generate a color name when the user selects the color.  But one of the issues is that this color name field should be able to hold any name that I give it.  Think of it as not being a literal "color name", but the alias that I am giving this color value.  For example, I could call a color "Midnight Mist" or "Brick" or "Logo Background" or "1958 Logo".  It might depend on the color's relationship with the design system or just a random value that I gave it.
So in your implementation, if I set the value of that field, then select the color, then the name that I gave the color is overwritten which I feel is not a great user experience.  Perhaps we could use your generated color name as a suggestion or a placeholder value if the user hasn't already provided a name.  But it probably shouldn't replace what the user has entered.

Committed in: https://github.com/finos/a11y-theme-builder/commit/75b8f585094aefd9e6f7acc1b6519417d82123ba.  Verified on dev.  Closing issue.


Update autounattend.xml

user expirinece with Chris Titus Utility

Hello, are my suggestion regarding Chris Titus Windows Utility not functioning being noticed?

Did you put it in the start menu?


Add support for import-maps

Now all major browsers, as well as Node.js and Deno, support import-maps natively or with a custom loader. see

https://caniuse.com/import-maps
https://www.npmjs.com/package/@node-loader/import-maps
<EMAIL_ADDRESS>
Some third party libs, e.g. xpath-analyzer, have used bare module specifiers, to use these libs in ClearScript runtime, currently I need to modify source code, transforming bare module specifiers into relative paths.

Hi @fuweichin,
ClearScript also supports custom loaders. You shouldn't have to modify any source code.
Let's walk through a simple example. Suppose you've installed xpath-analyzer as follows:
> npm install -g xpath-analyzer

Here are the relevant paths (on Windows):
var npmGlobalPath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "npm");
var xpathAnalyzerPath = Path.Combine(npmGlobalPath, "node_modules", "xpath-analyzer");
var xpathLexerPath = Path.Combine(xpathAnalyzerPath, "node_modules", "xpath-lexer");

And here's a custom loader that supports simple mappings:
public class LoaderWithMap : DefaultDocumentLoader {
    private readonly IReadOnlyDictionary<string, string> _map;
    public LoaderWithMap(IDictionary<string, string> map) => _map = new ReadOnlyDictionary<string, string>(map);
    public override Task<Document> LoadDocumentAsync(DocumentSettings settings, DocumentInfo? sourceInfo, string specifier, DocumentCategory category, DocumentContextCallback contextCallback) {
        if (_map.TryGetValue(specifier, out var replacement)) specifier = replacement;
        return base.LoadDocumentAsync(settings, sourceInfo, specifier, category, contextCallback);
    }
}

You're now ready to set up the script engine:
using var engine = new V8ScriptEngine();
engine.DocumentSettings.AccessFlags = DocumentAccessFlags.EnableFileLoading;
engine.DocumentSettings.Loader = new LoaderWithMap(new Dictionary<string, string> {
    { "xpath-analyzer", Path.Combine(xpathAnalyzerPath, "dist", "xpath_analyzer.esm.js") },
    { "xpath-lexer", Path.Combine(xpathLexerPath, "dist", "xpath_lexer.esm.js") }
});

And run a test script:
engine.AddHostType(typeof(Console));
engine.Execute(new DocumentInfo { Category = ModuleCategory.Standard }, @"
    import XPathAnalyzer from 'xpath-analyzer';
    const analyzer = new XPathAnalyzer('123 + 456');
    Console.WriteLine(JSON.stringify(analyzer.parse(), undefined, 2));
");

The output looks as expected:
{
  "type": "additive",
  "lhs": {
    "type": "number",
    "number": 123
  },
  "rhs": {
    "type": "number",
    "number": 456
  }
}

Please let us know if this approach works for you.
Good luck!

It works.
Thank you!
B.T.W. It would be better to add an example about import-maps to FAQ Tutorial.


Debugging Feedback

Hi .
I used convox instances ssh i-1232bc2,   but the command alway wait some time . it don't has any output some info.

Hi, this should be resolved by https://github.com/convox/rack/pull/1688, please let us know if you still run into it.


Select multiple frames at once in the sprite editor (to copy and paste)

Is your feature request related to a problem? Please describe.
Currently copying a complete animation, say an idle, to a different animation state is quite tedious, copy frame one, move to new state paste, copy frame two move to new state paste etc
Describe the solution you'd like
Holding down CTRL/CMD to allow multiple frames to be copied
Describe alternatives you've considered
Holding down Shift to copy multiple frames (in a row)

@chrismaltby if you find the time to take a look at this, that would help a loooot <3

I would like this feature a ton. And being able to select and delete not just copy & paste

Bumping this up to make this more visible.
@chrismaltby The option to select multiple frames would fit the philosophy of GB Studio 4 and would save a lot of people tons of time.

totally agree, I've added this to my todo list

totally agree, I've added this to my todo list

It would also be really nice to have a right click menu on the animation frames and allow you to duplicate, copy, paste, and delete from that menu

Amazing! This looks perfect.
I will patiently wait for the next build.

This ended up being a lot more effort than I expected, but should be working now as of this commit fc4c766
Ctrl/Cmd + click toggles selection of a frame Shift + click selects a range from the last selected frame to the clicked one drag/drop moves all selected frames together then copy/paste/delete keyboard shortcuts work on all selected frames and a context menu has been added on right click
unfortunately I'm having trouble making dev builds at the moment (looks like my Apple Developer Certificates expired today and I need to remember how to set that all up) so the dev builds haven't updated yet

This is so awesome.
Side note, can we get this for loops in the music editor? That would be a big upgrade


Refreshing not robust

Describe the bug

Vue gets stuck when spamming the refresh button within the search bar
throwing DOMException
Routing via buttons is working, but Page is not rendered

To Reproduce
Steps to reproduce the behavior:
Desktop (please complete the following information):

OS: Windows
Browser Firefox
Version 79.0 (64-Bit)

This is also the case with the filtering of courses/accounts. We may need to set a short timeout within the search bar component to fix this bug


Internal communication

Notes from the meeting in Lisbon with @piamancini and @znarf.
Goal: Have productive communications as we grow as a decentralized team

stand up meetings don’t scale

language issue: not everyone is comfortable in verbal communication in English: offer english lessons as a perk?

Slack: we will always need a synchronous way to communicate

email overload

expectation that people reply if put in To: (in Cc it’s FYI)
Not clear in threads who is reading it

Use github issues more and Octobox

Be respectful of other people’s time (to be added to "The Open Collective Way")

Code review: expectation of 24h response time (outside of weekends)

Friday open call

Maybe reconsider time (try different times, get feedback)
Record it and publish it (we can use Zoom for that)
Lacking structure:

Would be good to have slides (collaborative google slides)
Anyone should be able to add items to the agenda
New structure:

intro
1-2 sentences to introduce yourself and say what you worked on that week
demo 1, demo 2 if any
Q & A
Closing remarks

Protips

Star Team channel and team members in Slack (https://slack.opencollective.com)
create email filters

TODOs

[x] send notifications not from info@opencollective but<EMAIL_ADDRESS>(so that people can reply directly to support and don’t overload info@)
[ ] add to weekly report the latest active issue still open
[ ] close forum
[ ] Put the weekly meetings and monthly emails to git book
[ ] Xavier: check gitbook api to automate some of that
Improve weekly email:

[x] remove non useful numbers
[ ] add github issues still open / updated
[x] keep active collective / new collectives
[ ] tweet the 50 backers milestones

some of the things here are done, some are still worth doing.
automating a thank you tweet for 50 backers (currently is 10 and 100) is worth it
@znarf could that be a bounty?

@piamancini yes, someone needs to create the issue for it.


V33 - force close

Was able to run with 1the controller, but added 2nd controller and app forced closed when touching controller icon.  Has happened a number of times.   As a reminder, running 2 ac3 controllers.

Nevermind, appears to have self-corrected.


The capture is slowed down

Hello,
I put the directive on a textarea and I note that the seizure becomes very slow.
Here is my code:
<textarea class="form-control title-input" [hidden]="!editingCard" (keydown)="pressKey($event)" (blur)="blur()" [(ngModel)]="card.title"></textarea>
Thank you for your help

+1
I have a page with multiple identical components rendered, with several fields using (blur) handlers, and if I add autosize to some elements then the event handling is extremely sluggish


Swagger updates to address docs and sdk issues

Found few issues while generating docs and SDK. Addressed by these changes. All test pass and SDK generation and test cases passing as well. Changes:

Fixed wrong enum definitions
IncludedUpdateClassifications to use comma separated strings
Fixed parameters not showing in docs
removed discriminator property, was resulting in missing property in generated models
First letter capital for better looking doc
Cleaned common definition file
fixed x-ms-enum without enum on same level error in code generation
removed subscriptionid/resourcegroupname/azureautomationname parameters to simplify sdk (they are not in the client)
Changed scheduleinfo to be a required property
moved filter parameter for better sdk parameter ordering
ran auto indent on files

Note: This is a resubmit of original PR (https://github.com/Azure/azure-rest-api-specs/pull/2097). Been asked to resubmit from my own fork to address Travis issue with PRs originating from team forks.

@marstr do you think you can review this since you have some context

@marstr - Only thing that popped from ARM point of view was that this has some breaking changes like making a property as required and enum changes. This if done in a new api-version is fine. Please confirm and looks good to merge other than that.

@ravbhatnagar this is a new api version and it is required property so we should be ok here.

Adding the potential breaking changes label, but because this is in a new API Version, that's not a blocker.

No modification for AutorestCI/azure-sdk-for-python

 https://github.com/Azure/azure-sdk-for-ruby/pull/1199

No modification for AutorestCI/azure-sdk-for-python


cool-checkboxes usage

I'm not sure but to make my project work with cool-checkboxes-for-bulma.io I added :
@import '~cool-checkboxes-for-bulma.io/dist/css/bulma-radio-checkbox.css';
to my main styles.css file. Is this normal because I can't find something in the documentation saying we have to do so to make it work.
Moreover, I want to remove the outline when I click on the checkbox, is there a way I can work this out?

the path seems to be wrong. Can you verify whether its importing the correct css file.

the outline can be removed by adding css to the focus of the label with outline: none;

it is importing the correct file I checked in the styles.js file which is created when the project is build.
For anyone who wants to remove the outline on the checkbox you have to do:
#... label::before{
    outline: none;
}

Thanks.


Add doxygen css template

Maybe we can copy the following to start with:
doxygen-awesome-css

Lets look at: https://hdoc.io/blog/open-sourcing-hdoc/

I gave the doxygen-awesome-css theme a test run: https://jakoch.github.io/ttauri-project.github.io/docs/ttauri/0.3.0/index.html
If you decide for it, then he dropdown warning messages need a better position and color adjustment to match the dark theme.

Lets to this.
If you make a pull request I will merge it.


Japanese translation

Hello,
I translated your app into Japanese, so feel free to use it!
Some remarks:

Concerning the "line_name" I use it with the Paris metro in mind, i.e. with numbered lines. Then I used {index}号線. But if the lines have a name (like in Japan) or a letter (e.g. RER A) it should be {index}線. I cannot make this nuance in the current form.
Obviously I couldn't try it to check if the translation fit well in the space allowed and to check the context. I tested the application in French at the same time to be sure of the context.
I based my translation on the French version, with some checks on the English one to ensure some nuance.
I am not Japanese, so I cannot guarantee 100% accuracy, but I did my best!
I don't understand what you mean by "Fluid" for the branch alignment. Is it something like "auto"? So far I put フルード揃え that means "Fluid alignment" by a katakanisation of the "fluid" word.

Moreover, I think there is an error in the English translation for "Téléphérique", a "Cable car" is more what we can find in San Francisco. According to Wikipédia, a "téléphérique" is an "aerial tramway" or  an "aerial cable car"
If you have any questions, feel free to ask :)

Thank you so much for your contribution! To address your questions:

The line name should not assume the index is only a number. It could be a letter, a combination of both, a word, etc.
There should be no issue with “allowed space” as the content rules the containers sizes
Perfect
It's fine, I will check with my humble knowledge haha
Fluid is more like “justify”. I mean by this that the branches will take as much space as needed to fill the gap. I think the sense of the word is “something that flows”. Hope this helps.

Regarding the translation of "Téléphérique", I just checked WordReference, and it seems to be correct. Might be a matter of US vs UK english tho.

Thanks for the reply,
then {index}号線 should be changed to {index}線.
If it's more like justify, you can use 両端揃え that's used in MS Word for example.
I don't know if I can do another commit and add it to the PR afterwards.
Regarding "téléphérique", indeed, it seems something related to British and American English, there is such an explanation in Wikipedia.

Also, I ran your contribution through ChatGPT, and it pointed out a small issue:

The only minor issue I see is with the translation of the word "選考" (senkou) in several places, such as in:
"空港の選考" (Airport selection)
"色彩の選考" (Color selection)
In these cases, "選考" means "selection process" or "screening," which implies a more formal or competitive choice. A more appropriate term would be "選択" (sentaku), which directly means "selection" in the context of choosing options from a menu.
Therefore, you might want to revise translations like:
"空港の選択" instead of "空港の選考"
"色彩の選択" instead of "色彩の選考"

Ho yeah, chat GPT is right! I got confuse with kanjis (I don't like when on character put a small nuance ^^").
I will made the commit with the changes later :)

Good!

I made the corrections, it should be good now :)

Yes, I have! @simeonkpy :)


[docs] Add missing name to push examples

The name attribute is required but wasn't defined in the examples

Anyone want to merge for me? :)


Review 'How to request a profile review'

Please review the wiki page How to request a profile review
https://github.com/geological-survey-of-queensland/gsq-info-model/wiki/How-to-request-a-profile-review

For the final review step, Data Custodian Review, the github process is essentially the same as the preceding review steps and only changes in name. My view is that this final review should be made by reviewing a summary of the profile and the outcomes of the preceding reviews by the data managers and content authorities. Rather than asking the custodians to create branches and pull requests we should ask them to either formally approve or to request changes/further information by way of written feedback. This final approval step should be for a custodian who is already across the approach being taken and is therefore formality step that should be simplified.

Rather than asking the custodians to create branches and pull requests

The custodian does not create a branch or pull request. The content authority does all branches and pull requests.

request changes/further information by way of written feedback

This means that we have their approval outside of our workflow system (Github). In 5 year's time, we should be able to see the full audit trail of reviews, comments, and approvals.
I think custodians will be capable of responding to the request from Github.

The custodian does not create a branch or pull request. The content authority does all branches and pull requests.

I cant see where it says who should be performing these activities. Also, I thought that it was going to the data manager responsibility to not only create profiles (in lucid chart, github etc) but to also oversee and manage this review process.

This means that we have their approval outside of our workflow system (Github). In 5 year's time, we should be able to see the full audit trail of reviews, comments, and approvals.
I think custodians will be capable of responding to the request from Github.

Apologies, but I was suggesting written feedback within the github workflow, defintely not outside of it.

data manager responsibility to not only create profiles (in lucid chart, github etc) but to also oversee and manage this review process

It's a good question. There are advantages to data managers doing it. My thinking was that the data custodians could do this.
@KellyVance what are your thoughts?

I do like leaving more of the actual GitHub process in the hands of the data managers as an enabler of oversight. Acknowledging that parts of the business process are recorded in GitHub but not necessarily a function of GitHub. I wonder if even the initial branch creation should be a data manager role for the content authorities to then populate/edit.

leaving more of the actual GitHub process in the hands of the data managers
initial branch creation should be a data manager role

Agree - the whole github creating and pull requesting and merging can be done by the Data Managers. The instructions are open as to who performs the githubbing. That way, we can cater for a technically proficient data authority who wants to do the githubbing able to do it.

I'm in favour of following a protocol which limits the exposure of the Content Authorities to the vagaries of GitHub.
In general, I'd prefer for them to be focussed on the task of creating/editing/reviewing the profile, which is a big enough issue as it is without introducing a second layer of complexity.

Data managers will drive Github, creating branches and pull requests.
However, I will leave this out of the instructions as there is likely to be some non-data manager users who will have the skill to drive Github.


Hardware references

I think some reference to the used hardware could be usefull.
For examle, for each component, his name or his code or/and where to buy it. (in particular oled screen)

Good point actually. I have a project description at Hackaday but even there I do not mention what exact display I used.

Also main board name and with what was flashed.... Simply imagine that someone has to build your project starting from zero...
If you remember them, Ii think that also codes and/or links of bushbuttons and rotary switch can be usefull....


Getting it to work on a monorepo like nrwl/nx

Just putting it out there for the folks who are struggling to get this up and running with a monorepo architecture similar to Nx where NextJS is not on the root directory, you can add the localePath property to your next-18next.config.js as such:
{
  localePath: './apps/<nextjs-app>/public/locales',
}

Within _app.tsx, you can also append the configuration when calling appWithTranslation, like so:
import i18nConfig from '../next-i18next.config';
...
export default appWithTranslation(App, i18nConfig);

This should start working for client side translations, but for the pages that have server side or static generation, you would have to use getServerSideProps or getStaticProps as mentioned in the README, but you would also need to pass your config there, as below:
import i18nConfig from '../next-i18next.config';
...
export async function getStaticProps({ locale }) {
  return {
    props: {
      ...(await serverSideTranslations(locale, ['common', ...otherNamespaces], i18nConfig)),
    },
  };
}
...
const Title = () => {
  const { t } = useTranslation();

  return t('title');
};

Hope that helps someone! ⭐

Thank you very much @AmruthPillai <3

I've created an file called utils/next-i18next with all the methods overridings that use my config file, to prevent importing it everywhere
import { appWithTranslation as ni18next_appWithTranslation } from 'next-i18next';
import { serverSideTranslations as ni18next_serverSideTranslations } from 'next-i18next/serverSideTranslations';

import nextI18NextConfig from '../next-i18next.config.js';

export const appWithTranslation: typeof ni18next_appWithTranslation = (
  component
) => appWithTranslation(component, nextI18NextConfig);

export const serverSideTranslations: typeof ni18next_serverSideTranslations = (
  locale,
  namespaces
) => ni18next_serverSideTranslations(locale, namespaces, nextI18NextConfig);

Hey @AmruthPillai  and @kbooz Iam struggle to make it working, no error, just no translation (local path are recognized), I use NX with a T3 Stack, do you have a repo to share about your setup ? thanks to you all


Combine rotate and resize operation results unexpected image resolution.

Image resolution is not correct after rotate and resize.
For example, the original image resolution is 3000(w) x 2000(h).
what I am going to do is resize the image to 750(w) x 500(h) then rotate image by 90 degree. So the image resolution should be 500(w) x 750(h). Code is:
image.resize({ height: 500 }).rotate(90).then(...);

However, the resolution of image results at 333(w) x 500(h).
Seems like the rotate operation is done before resize no matter the operation order is.
I have confirmed if I separate this two operation into two script to process, I will got the correct image resolution.   So I believe a bug is in there.

Hello, you may be interested in the discussion at #241 about improvements to operation ordering in the API.

I hope this information helped. Please feel free to re-open with more details if further help is required.


Does the data.db file support  rewrite like redis AOF?

When frequent addition and deletion of the same key occurs, does the data.db file support rewriting like Redis AOF to reduce disk space usage？

Yeah. The data.do auto shrinks automatically, similar to redis.


ENH: Make special C++ implementations work on CUDA (and beyond!)

Reference issue
RFC 19404
What does this implement/fix?
This is the next step in the C++ migration of sp.special. What it does in particular is update the new C++ lambertw to work on CUDA. This required a bit of extra work and boilerplate, but after that was done the code looks almost the same. By doing this now, we'll make more special functions CUDA-compatible (and array API compatible more generally) as we go.
What you will note is that NVRTC lacks some of the standard library. People are aware of that and there are many ways to work around it. What I've done, and will advocate for here, is a simple config.h file that checks to see if certain std include headers exist. If they don't, we either alias existing functions or types, or simply add them ourselves. A small amount of work can take us a long way here. I have chosen to define them directly in std, rather than declare some other namespace, and we can talk more about that if people want.
NVIDIA is working on this more generally, see https://github.com/nvidia/cccl

cc @steppi @mdhaber @tirthasheshpatel

A huge thank you for this!
(had recently to copy-caste some cephes code into https://github.com/cupy/cupy/tree/main/cupyx/scipy/special --- would be great to avoid copy-pasting going forward)

A huge thank you for this!
(had recently to copy-caste some cephes code into https://github.com/cupy/cupy/tree/main/cupyx/scipy/special --- would be great to avoid copy-pasting going forward)

That is the plan! I believe @steppi has his 👀 on all of Cephes, possibly quite soon.

Very nice @izaid!
One small thing; can you put the formatting changes in a separate commit so it’s easier to look at the diffs?
For the test, I think we can just add a test in scipy/special/tests that gets skipped if CuPy isn’t available. I’ll give

@steppi I have reverted the formatting, and will save that for a follow-up PR.
I have some thoughts on how to test sensibly, but I'd actually like to leave that also for a follow-up PR. It will require some effort, and I'd like to get these C++ changes in so as to not conflict with your and others work. Of course, there is already testing in this PR by virtue of the host code being the default SciPy implementation.

@steppi I have reverted the formatting, and will save that for a follow-up PR.
I have some thoughts on how to test sensibly, but I'd actually like to leave that also for a follow-up PR. It will require some effort, and I'd like to get these C++ changes in so as to not conflict with your and others work. Of course, there is already testing in this PR by virtue of the host code being the default SciPy implementation.

Ok. I can accept adding the CuPy tests later as long as this PR doesn’t break anything in SciPy.

I’m seeing relevant test failures due to redefinitions of constants.

Nice. Looks like that did it.

Howdy, I lead the team that maintains https://github.com/NVIDIA/cccl
I wanted to follow up with deferring to Thrust for the missing standard library functionality.
I'd highly recommend using libcudacxx instead of Thrust as libcudacxx is intended specifically for this kind of use case where you want a heterogeneous C++ Standard library implementation that works with NVRTC.
So instead of thrust::complex you use cuda::std::complex or instead of std::numeric_limits, cuda::std::numeric_limits.

Right now, the priority is making things work with CuPy, so we need to explore whether cuda::std is available there.

cc @leofang (who may know)

Happy to help any way I can! Let me know if you want to set up a time to chat more in depth and I'd be happy to answer any questions or explain where we're going.


proposal: protoc-gen-go: provide first-class support for plugins?

There are number of issues filed in this repo that are related to meta-users asking for expanded and more stable support for plugins in protoc-gen-go via the generator.RegisterPlugin API.
For some background, the RegisterPlugin function and API was originally added to support gRPC. Given that was the original intended use-case, it was not well-thought out how it would be used by other projects in the open-source world.
The current amount of support for plugins is practically zero. The README states:

The protoc-gen-go/generator package exposes a plugin interface, which is used by the gRPC code generation. This interface is not supported and is subject to incompatible changes without notice.

Given the number of issues filed related to plugin support, it may be worth considering whether a stable API and documented restrictions should be provided to make plugins better supported.
I don't deny that there are benefits to the ecosystem of plugins that sprouted up. However, they also do carry serious maintenance burdens on the development of protoc-gen-go as it is easy for protoc-gen-go to make a change that breaks various plugin. For example, if we start generating an Unmarshal method, plugins that were previously generating that would suddenly break due to a duplicate method.
The alternatives to dropping plugin support are:

Require users to fork the generator logic to bolt-on the logic themselves. However, this does make it difficult to compose the functionality of two plugins together.
Treat plugins another post-processing step on the generated .pb.go file. They take the .pb.go file as input (and possibly the descriptor) and modify the input source or emit a separate file that exists side-by-side with that file. For example, a number of plugins exists that simply to add new methods could place the new methods in a separate file.

The question to answer is what sorts of operations we can support in plugins.
I don't think we can support modification of the generated types in any meaningful fashion. Either the modifications we allow are so constrained as to be useless, or impossible to make any meaningful compatibility guarantee about. I'd be interested to hear specific counterexamples if there are any.
What we do (sort of) support is generating additional code. This actually doesn't need to be done as a protoc-gen-go plugin at all--you can write a program which runs as a protoc plugin (the same way protoc-gen-go does), parses the CodeGeneratorRequest, and produces whatever output it desires. Arguably this is what we should have done for grpc. Under this approach, the generated grpc (or whatever) service definitions end up in a different file (possibly in the same Go package, possibly not), but I don't see that as a negative.

That is a good point. You can always generate more code to add functionality.
There are also places where support for interception/modification of existing functionality would be helpful, but I have work to do before submitting a particular proposal.

Also, p.s. I see all the work and activity closing out the backlog of issues, and I deeply appreciate it.

After having given this some thought, I'm cautiously optimistic that our relab/gorums plugin could be rewritten to work without running as a plugin, but as a standalone command that could generate our auxiliary code in a separate .gorums.go file that reside side-by-side with the .pb.go file. However, I would definitely want to have stable API support for getting hold of the various descriptors, so that we don't have to write a proto parser ourselves.

Suppose there was a hypothetical package (let's call it protogen) that provided:

Given a proto import path, protogen tells you the Go package path that the proto import path corresponds to (e.g., foo/bar/baz.proto maps to github.com/company/protos/foo/bar).
Given a proto message name, protogen tells you Go type name for the enum.
Given a proto enum name, protogen tells you the Go type name for the enum.
A documented guarantee that generated message types are of *T instead of T.
A documented guarantee that generated enum types are of T instead of *T.

You could imagine that protogen also provides helpers to integrate with protoc and process the descriptor protos, but that's the icing on the cake. The functionality mentioned in the bullets above is critical for generators to cooperate.
Would you be able to implement gorums using protogen? If not, what's missing from protogen?

I don't think the bullets would be enough for us. We currently use generator.FileDescriptor to get hold of not only message names, but also package name, method names, the request and reply message names, and options on those methods and more. We do that in order to populate a few data structures that is then used to generate Go code using a bunch of templates. This generated Go code uses gRPC and protobuf generated code. One of the key methods for extracting this information is here, and should be representative of the information we need.

What does the protobuf team think of protoc-gen-star? It seems to provide a lot of useful, standardized, functionality for protoc plugins.

@achew22, the protobuf team operates out of github.com/protocolbuffers. This repository is maintained by a portion of the Go team for the Go implementation of protocol buffers.
That said, I'm not an expert on protoc-gen-star, but it seems that their goal is to make it easy to create protoc plugins across multiple languages. In particular, their support for Go is not always forwards compatible since they only rely on the CamelCase function to derive names. However, the purely lexicographical transformation that CamelCase does is not able to take into account other information like gogo/protobuf's customname or similar options that we may want to support officially (see #555). Furthermore, the generator has some unfortunate logic for doing name conflict resolution that CamelCase alone cannot handle.
One of the goals for a hypothetical protogen package would be to provide a single place to make these naming decisions.

The protogen package provides functionality for easily writing plugins for protoc, the protocol buffer compiler. We no longer support plugins to protoc-gen-go (which itself is a strange concept since protoc-gen-go itself is a plugin to protoc).
It has been released as part of<EMAIL_ADDRESS>

What are the recommendations for protoc plugins that are written in Go, but do not emit golang? Is there a similarly supported package for that?

You can either use protogen and ignore the Go-specific bits, or just write your own program. It's not hard; a protoc plugin is just a program that reads a CodeGeneratorRequest and writes a CodeGeneratorResponse.


Write a Scala program to convert temperature from celsius to kelvin

Description
Write a Scala program to convert temperature from celsius to kelvin
Input  ( C ) : -40
Output ( K ) : 233.15

Contributed by - @magar51

How to contribute

Comment !assign to assign this issue to yourself
Fork this repository
Create a new branch
Save the solution in program/program/convert-temperature-from-celsius-to-kelvin/convertTemperatureFromCelsiusToKelvin.scala
Commit the changes
Create a pull request

!assign

I am working on this issue.


stable14 daily builds are missing

there is only master right now.

Big question: does it make sense to provide dailies? As you can't upgrade between them anyways 🙈

well we have dailies for all other stable branches and master. So I guess stable14 should also be there.

Okay - I will add it once the release script is updated. https://github.com/nextcloud-gmbh/release-script/pull/2

There are now stable14 and stable15 dailies.

There are now stable14 and stable15 dailies.

And master ones as well.


[BUG] Error: xargs: unmatched single quote

Is there an existing issue for this?

[X] I have searched the existing issues

Describe the bug?
I get the following error sometimes:
xargs: unmatched single quote; by default quotes are special to xargs unless you use the -0 option

To Reproduce
I haven't had time to try to reproduce it locally. I'm first posting here to check if this is a known issue or if someone else already had it before I spend more time troubleshooting it (I'm a bash novice).
What OS are you seeing the problem on?
ubuntu-latest or ubuntu-20.04
Expected behavior?
There should be no errors.
Relevant log output
Run tj-actions/changed-files@2f8c46f9d79d979656108f4fc4414c378ee4abed
  with:
    files: ^transform/snowflake-dbt/.*

    base_sha: 01f529cacb2dff32b9a54cf946dce1c74c039a5a
    sha: c6e8af0e7208d28653aab87352c9d5f81cc7742b
    token: ***
    separator:
  env:
    SNOWSQL_ACCOUNT: ***
    SNOWSQL_USER: ***
    SNOWSQL_PWD: ***
    SNOWSQL_WAREHOUSE: dbt_ci_wh
changed-files
  Getting HEAD info...
  From https://github.com/voiapp/data-pipelines
   * [new branch]        master     -> master
   * [new branch]        master     -> origin/master
  Retrieving changes between 01f529cacb2dff32b9a54cf946dce1c74c039a5a (master) → c6e8af0e7208d28653aab87352c9d5f81cc7742b (backfill_MRS_vehicle_not_available)
  Checking for file changes: "^transform/snowflake-dbt/.*"...
  Added files:
  Copied files:
  Deleted files:
  Modified files: transform/snowflake-dbt/models/analytics/magic_ride_session.sql transform/snowflake-dbt/models/model/engineering/user_experience/start_ride_attempt.sql
  Renamed files:
  Type Changed files:
  Unmerged files:
  Unknown files:
  All changed files: transform/snowflake-dbt/models/analytics/magic_ride_session.sql transform/snowflake-dbt/models/model/engineering/user_experience/start_ride_attempt.sql
  All modified files: transform/snowflake-dbt/models/analytics/magic_ride_session.sql transform/snowflake-dbt/models/model/engineering/user_experience/start_ride_attempt.sql
  xargs: unmatched single quote; by default quotes are special to xargs unless you use the -0 option
  Error: Process completed with exit code 1.

Anything else?
Great project, thanks for maintaining it! Very useful.
For security reasons, I have to hardcode the commit SHAs of external GitHub Actions. The one I'm using for this report is https://github.com/tj-actions/changed-files/commit/2f8c46f9d79d979656108f4fc4414c378ee4abed, which is the equivalent of v9.3.
Screenshot of the error:
Code of Conduct

[X] I agree to follow this project's Code of Conduct

Hi @jackton1, thanks a lot for the quick action, really appreciated! I will give the newly released version a try next week.
I have an automation that makes a "backup" of some configuration files from external systems into my repository and it uses the original names from the source systems to create folders and files. Now I realize that this automation indeed created files and folders with quotes on the names:

@fernandobrito Okay that makes sense, glad you found the root cause let me know if the error still persist.
Thanks


Incorrect column widths

Hello.
I've been scratching my head over a particular issue with a new website using Foundation 5 for quite some time. On this page you will see there are various white lines in the grid and images do not occupy the correct widths and heights. This leads to an ever so slightly disjointed layout.
It seems petty, but for us pixel perfectionists, this is a problem.
http://testbench.watb.co.uk/watbnew/
Please see this image if you're not seeing the issue: https://dl.dropboxusercontent.com/u/20205486/f5-grid.JPG
I'm using the libsass setup. The only thing I have changed is the max-width of the row - but this issue persists even when that is left at the default.
It effectively means you cannot achieve these layouts, with Foundation, without these thin lines. If you had a long page, this could end up with a messed up layer.
The issue lies with how the widths are calculated. If you look at the columns, they are calculated as follows:
.medium-4 { width: 33.33333%; }
If you manually change that value to the following in devtools, the issue is resolved:
.medium-4 { width: 33.33334%; }
Heck - I know this is a bit of a silly issue. But for me it's important. I apologise if this turns out not to be an issue with Foundation, but I can't currently see how it's not as the only way I can fix it currently is to manually specify the column width as an override.

This has been a long standing issue with responsive. There hasn't been a great Sass solution or otherwise that we can add to the framework. We're going to keep this in our known issues tracker and continue looking for better solutions.
We added this to our "known issues" section in our planning board for the next version. You can see and vote on the proposed updates here: https://trello.com/b/QBPKlQqf/foundation-sites


Allow linkcheck

I love the tabs, but sphinx-tabs prevents linkcheck from succeeding:
WARNING: Not copying tabs assets! Not compatible with linkcheck builder

This simply adds linkcheck as a compatible builder so that they don't conflict.

We're experiencing this issue too as we have treat warnings as error in our Sphinx build. Would love to see this get included.

I think this can be closed, as you can add custom builders. An example of this is in the README

yeh I'm going to close this, since you can just use the sphinx_tabs_valid_builders config 😄


[ENG-3649] Fix bugs: fix mfr iFrame height

Ticket: https://openscience.atlassian.net/browse/ENG-3649
Feature flag: n/a

Purpose
The purpose of this ticket was to fix the current height issues with the mfr iFrame height. The viewport is currently too small.
Summary of Changes
Currently a hard coded value for the height is passed as parameter @height={{600}}. This value has been removed on the component class and replaced with a relative viewport height value in styles.
Screenshot(s)

Side Effects
This change affects the UI display of the iFrame to span to the bottom portion of the window.
QA Notes
On the file detail page:
-Does the iFrame fill the bottom viewport?
-How is the window affected when resized?
-Does it display correctly on mobile?

Closed in favor of #1425


account for price correctly when orphaning

Forgot to account for the actual price in the original implementation. The log removal could be simplified too since we can always know that the last log is not orphaned .

Found more issues testing in Prod. Apologies on the back and forth. Testing this takes a long time...


[WIP / Experiment] Onyx state tracking w/ global state proof of concept

cc @roryabraham
Details
Proof of Concept for switching withOnyx() calls to get their values from a global state provider + consumers which get updated "magically" when the properties of the state they are interested in change.
Not optimized and haven't benchmarked. It seems a bit slower or equivalent than what we have now so I think needs tweaking. I am also sure there are things about this react-tracked library that I don't quite understand.
But the concept is pretty interesting -> https://react-tracked.js.org/docs/introduction/
This could be further improved on by having some kind of more specific selector e.g. if a component only needs one field it could in theory do:
withTrackedState((state, props) => ({
    report: state[`${ONYXKEYS.COLLECTION.REPORT}${props.reportID}`].notificationPreference,
}))(NotificationPreferenceComponent);

There are also other libraries in the same realm like valtio that look interesting.

This was a super crazy experiment and didn't seem to have any immediate improvements on performance so I'm going to close it for now.


Cannot read property 'indexOf' of undefined

Hi i get this error, i googled a bit but i cant get it working.
this is the json
`{
"bridge":{
"name": "Homebridge",
"username":"CC:22:3D:E3:CE:30",
"port":51826,
"pin":"031-45-154"
},
"descriptions":"this is my Homebridge Config file",
"platforms":[
{
"platoform":"netatmo",
"name":"netatmo weather",
"ttl":5,
"auth":{
"client_id":"*****",
"client_secret":"",
"username":"",
"password":""
}
}
]
}`

Can you post the full error message? This is a bit difficult with just the config.


Traffic Ops golang -- GET /api/1.2/system/info endpoint

Merge after #1355
Adds /api/1.2/system/info-wip endpoint -- for #1352

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/incubator-trafficcontrol-PR/416/
Test PASSed.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/incubator-trafficcontrol-PR-trafficops-test/372/

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/incubator-trafficcontrol-PR/423/
Test PASSed.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/incubator-trafficcontrol-PR-trafficops-test/379/


maskari-controller is not a python package

The character "-" in the name of a pyhon package is invalid. we get import error while creating database:
openstack@openstack_3:~/masakari/masakari-controller/db$ ./create_database.sh
/home/openstack/masakari/masakari-controller/db
/home/openstack/masakari
/usr/bin/python: No module named masakari-controller.db

Also masakari-controller does not contain _init_.py so as to be recognized as a package.
IMO directory structure should be like:
masakari-controller
`---controller
      `---__init__.py and other py files

masakari-instancemonitor
`---instance_monitor
     `---__init__.py and other py files

and so on.

I am hitting the same issue as well.

Thank you for the reporting the issues and sorry for the late response.
As @rsjethani said, "-" should not use in pkg name tree. However, in current source tree masakari-controller does not consider as a package and that a one reason why I intentionally avoid init.py directly under masakari-controller directory.
Furthermore, current source set masakari-controller as the parent dir by adding it to sys.path before import the sub modules. This was not the best solution but the affordable solution at the time.
Changing the top level directory structure will effect to most of the modules and pkging methods.
Though, we have lot of changes coming in on next release, and changing the directory structure is among them.
Just for create db issue,
PR #42 will fix the create database issue.

Thank you so much for the response.  I am trying to get masakari running on centos with packstack.  I am working through the pacemaker/stonith config as well as the masakari install though I am new to this.  I just want to prove that you can run pets in openstack using masakari to handle the nova-evacuate command when sensing a compute node problem.
From: samP<EMAIL_ADDRESS>Sent: Wednesday, June 15, 2016 3:39 AM
To: ntt-sic/masakari<EMAIL_ADDRESS>Cc: Brotherson, Marc<EMAIL_ADDRESS>Comment<EMAIL_ADDRESS>Subject: Re: [ntt-sic/masakari] maskari-controller is not a python package (#41)
Thank you for the reporting the issues and sorry for the late response.
As @rsjethanihttps://github.com/rsjethani said, "-" should not use in pkg name tree. However, in current source tree masakari-controller does not consider as a package and that a one reason why I intentionally avoid init.py directly under masakari-controller directory.
Furthermore, current source set masakari-controller as the parent dir by adding it to sys.path before import the sub modules. This was not the best solution but the affordable solution at the time.
Changing the top level directory structure will effect to most of the modules and pkging methods.
Though, we have lot of changes coming in on next release, and changing the directory structure is among them.
Just for create db issue,
PR #42https://github.com/ntt-sic/masakari/pull/42 will fix the create database issue.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHubhttps://github.com/ntt-sic/masakari/issues/41#issuecomment-226138104, or mute the threadhttps://github.com/notifications/unsubscribe/ATAyrusbPht9WTQeEIayLYE0EjUl2nISks5qL8hRgaJpZM4IqUov.

@brocdeckard Thank you and please don't hesitate to raise issues if you have any problems or unclear points about masakari. I would be happy to help you out.

Cool I may take you up on that.  I am trying to do this proof of concept for solidfire/netapp to add light to the pets in openstack debate.  I had to jump to live migration and provider networks but should be playing with pacemaker and masakari next week.
I'm not too clear on pacemaker config for Nova compute, but I should get there soon.
Any interest in an auto deploy for this on top of packstack.  Maybe use paramiko to hit all of the compute nodes from the packstack answer file and auto deploy masakari?
If I tackle that I am happy to contribute.
Thanks
Marc

From: samP<EMAIL_ADDRESS>Sent: Wednesday, June 15, 2016 7:20 PM
To: ntt-sic/masakari
Cc: Brotherson, Marc; Mention
Subject: Re: [ntt-sic/masakari] maskari-controller is not a python package (#41)
@brocdeckardhttps://github.com/brocdeckard Thank you and please don't hesitate to raise issues if you have any problems or unclear points about masakari. I would be happy to help you out.
�
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/ntt-sic/masakari/issues/41#issuecomment-226364653, or mute the threadhttps://github.com/notifications/unsubscribe/ATAyrqCPrBpz1CvrFJ3hG88nQIoFcIe9ks5qMKT7gaJpZM4IqUov.


Optimization: Reduce cache calls

What happened?
Thank you very much for this library!
I've done some debugging and noticed there are quite a few cache calls happening for the following scenario:
There's a response in cache which is stale (max-age reached) and it gets re-validated.
I'm wondering whether those could actually be reduced.
I would have expect two cache calls for such a case:

Cache Call 1: find to get cached response
Do request to revalidate
Cache Call 2: set to update the cached response

In fact, 5 calls are made (see the log below, logged as cache: ...).
I guess that's because request configs are updated and written back to cache again before the actual request is carried out. Couldn't that happen in-memory and only be written down to the cache after processing the new request?
axios-cache-interceptor version
v1.3.2
Node / Browser Version
Node.js v18.19.0
Axios Version
v1.6.2
What storage is being used
Another one
Relevant debugging log output
cache: find (key:<PHONE_NUMBER>)
cache: set (key:<PHONE_NUMBER>)
cache: set (key:<PHONE_NUMBER>)
{ id: '1137762219', msg: 'Updated stale request' }
{
  id: '1137762219',
  msg: 'Sending request, waiting for response',
  data: { overrideCache: false, state: 'stale' }
}
cache: find (key:<PHONE_NUMBER>)
{
  id: '1137762219',
  msg: 'Useful response configuration found',
  data: {
    cacheConfig: {
      update: {},
      ttl: 300000,
      methods: [Array],
      cachePredicate: [Object],
      etag: true,
      modifiedSince: false,
      interpretHeader: true,
      cacheTakeover: true,
      staleIfError: true,
      override: false,
      hydrate: undefined
    },
    cacheResponse: {
      data: [Object],
      status: 200,
      statusText: 'OK',
      headers: [Object]
    }
  }
}
{
  id: '1137762219',
  msg: 'Found waiting deferred(s) and resolved them'
}
cache: set (key:<PHONE_NUMBER>)
{
  id: '1137762219',
  msg: 'Response cached',
  data: {
    cache: {
      state: 'cached',
      ttl: 89000,
      staleTtl: undefined,
      createdAt:<PHONE_NUMBER>005,
      data: [Object]
    },
    response: {
      status: 200,
      statusText: 'OK',
      headers: [Object],
      config: [Object],
      request: [ClientRequest],
      data: [Object],
      id: '1137762219',
      cached: true
    }
  }
}

Hey @paescuj is this directly impacting the performance of your app? Request and response in axios should have completely separated state from each other, that's why two finds happen.
Let me walk you through what


Python 3.8 and up use importlib.metadata, < 3.8 uses importlib_metadata

I suppose we should just officially deprecate <3.8

Fixed in #606


Include Babbage checks

Related to #7
Using the dev/pallas-applying-public-API pallas branch.
The first step is to classify the checks based on the information they need. Some checks only require transactions, while others require a subset of the UTxO set.

The validations from the babbage are listed below, in a block structure. Blocks start with a statement that describes requirements of the validations within that block. Nested blocks require their requirements and container blocks requirements.
Some validations from pallas require a tx_body, but it is obtained from the transaction.
Some validations require specific context to validate, those validations (starting from the 9th validation) were implemented but not added to the validations list.

- The following validations require the tx:
1. validate_babbage_ins_not_empty(mtx)
2. validate_babbage_minting(mtx)
3. validate_babbage_well_formed(mtx)
4. validate_babbage_auxiliary_data(mtx)

    - The following validations also require the protocol parameters
    5. validate_babbage_min_lovelace(mtx,prot_pps)
    6. validate_babbage_output_val_size(mtx, prot_pps)
    7. validate_babbage_tx_ex_units(mtx, prot_pps)

        - The following validation also requires the tx size
        8. validate_babbage_tx_size(size, prot_pps)

            - The following validation also requires the tx utxos
            9. validate_babbage_fee(mtx, size, utxos, prot_pps)

    - The following validations require the transaction's utxos
    10. validate_babbage_witness_set(mtx, utxos)
    11. validate_babbage_all_ins_in_utxos(mtx, utxos)
    12. validate_babbage_preservation_of_value(mtx, utxos)

        - The following validations also require network information and the block slot
        13. validate_babbage_languages(mtx, utxos, network_magic, network_id, block_slot)
        14. validate_babbage_script_data_hash(mtx, utxos, network_magic, network_id, block_slot)

    - The following validation requires the tx and the block slot
    15. validate_babbage_tx_validity_interval(mtx, block_slot)

    - The following validation requires the network id
    16. validate_babbage_network_id(mtx, network_id)


Shadow DOM support

Since Atom 's 166 release Shadow DOM is enabled by default. Currently the theme does not support this yet.
As soon as I have some free time I plan to add full Shadow DOM support, until then please turn off the Shadow DOM in the Settings View if you wish to use the theme.
See also: http://blog.atom.io/2015/01/05/enable-shadow-dom.html

:+1: Just came here to see if you already had an issue open for this.


Improve google-pubsub test coverage

Add tests for:

PRODUCER

Add assert to cover Exchange.GROUPED_EXCHANGE property for grouped exchanges.

Cover ordering capabilities.

Add assert to cover existence of GooglePubsubConstants.MESSAGE_ID after succsesfull delivery.

CONSUMER

Cover redelivery if message is not acknowledged or the header GooglePubsubConstants.ACK_ID removed.

Assert that consumer returns byte[]

Test rollback/redelivery (ideally with use of GooglePubsubConstants.ACK_DEADLINE)

There is a problem with orderingTest. It fails on CI - reported as https://github.com/apache/camel-quarkus/issues/3944
Test is disabled on CI.

Another problem (seems like an issue in the test) reported as https://github.com/apache/camel-quarkus/issues/3957.
(there is a workaround in the test, so it does not block merging of the PR)


Page is reachable out side

I am having the setting on docker container rails server started with out any error but I can access the webpage from out side. Any clue
see the attachment.

I fixed this issue! I am crazy... I have used wrong IP address to bind, that why I got this issue.


Make modal footer sticky

This PR fixes issue #19

What does it look like on a cell phone?

@ericfranz Check out PR #23


Directory support for parquet-schema

Right now parquet-schema command in parquet-tools requires that the input to be a .parquet file and not directory. This is not most convenient since outputs are directories of part files.
Reporter: Neville Li / @nevillelyh
Assignee: Neville Li / @nevillelyh
Related issues:

Consolidate PathFilter for hidden files (relates to)

Note: This issue was originally created as PARQUET-204. Please see the migration documentation for further details.

Julien Le Dem / @julienledem:
could you clarify what part of the code you are talking about?

Tim / @tsdeng:
[~neville], thanks for reporting this. Are you planning to work on this?
Otherwise I can assign it to myself.

Neville Li / @nevillelyh:
Here's the PR: https://github.com/apache/incubator-parquet-mr/pull/136

Tim / @tsdeng:
It's the parquet-schema command in parquet-tools

Ryan Blue / @rdblue:
Issue resolved by pull request 136
https://github.com/apache/incubator-parquet-mr/pull/136


update metric.py

@neubig  this should be ready for review.

Modified part of them. Others will be put in future PR.

I think that this is OK, but I would really like to keep the interface of the __call__ function of Preprocessor as simple as possible (i.e. take only the input string as an argument). If you can just fix that part I think this is ready to merge.

I think that this is OK, but I would really like to keep the interface of the __call__ function of Preprocessor as simple as possible (i.e. take only the input string as an argument). If you can just fix that part I think this is ready to merge.

Sounds good, This has been fixed in this pr: https://github.com/neulab/ExplainaBoard/pull/194


Drawer example: closeOnOutsideClick

I think it would be beneficial to mention that closeOnOutsideClick simply invokes the onClose callback allowing you to toggle your variable controlling the state of the drawer.  It's not really clear in the docs and example.

Makes sense, will be fixed in an upcoming commit.


Updated tests

Issue #, if available:
Description of changes:

Updated tests directory
Scoped down security

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

The new test framework is much easier to use and follow. Thanks Brandon!
Test results:
us-west-2 test result:
11 passed in 760.56 seconds
us-east-1 test result:
11 passed in 808.66 seconds
us-east-2 test result:
11 passed in 857.49 seconds

I'll squash and merge this now.


Line breaks are added

It is normal that when running wp-config-transformer line breaks are added throughout the wp-config.php file ???
Why?

Hi, did you figure out what the cause was for this? It happened to me too but now I'm having trouble reproducing it again and I can't figure out what's going on.

@Ryvix  Yes friend, I read in your documentation that this is the expected behavior for Windows operating systems.
In Linux if it works correctly, it does not add additional newlines.

@franzarmas I am using Linux and it is adding the line breaks for me -- I'm using Ubuntu 20.04 using WSL2. I'm performing the operation in my WSL instance though, so the Windows file system isn't involved.
The command I'm running is: wp config set WP_DEBUG true --raw. It's adding a line break every other line. Any ideas what the issue might be?


Move all browser and page related files into a single export

Refactor the browser abstractions, by

Grouping the different abstractions (1 for axe, 1 for storybook, and one wrapping them both) into a directory
Converting the top-level browser abstraction into a class

This also contains a minor cleanup to remove some unnecessary dependency installation on CI for Ubuntu.

@chanzuckerberg/edu-frontend-infra I'm merging this. If you have any thoughts on anything here, though, will revisit

@chanzuckerberg/edu-frontend-infra I'm merging this. If you have any thoughts on anything here, though, will revisit


Integrate vfsharp feb 25 to mar 02

Integrate visualfsharp master from efb57cf56934bd28d3aa174d3c45a3eb4e7c1eb1 to 166ec385e1e3ffaa569dd70d1af2b7c063927391
I'm primarily hoping these changes will address some FCS stackoverflow issues that we're seeing in Ionide that were introduced in the upgrade from FCS 26 to FCS 27 (specifically file parsing/checking while running under .net core).

I don't plan on merging this quite yet, I'm trying to package the nuget locally, flow it through into FSAC, then run tests against known-bad solutions and projects with ionide pointing to an updated FSAC instance to verify.  (Plus there are workflow things that need to be worked out in this repository to enable publishing of prerelease packages)

There's a fix identified and almost merged in VF#, I'll wait for that change to merge into upstream and then reintegrate before releasing a new version.


Release EKS Go: v1.21.11-12

Increment release file to publish new EKS Go artifacts for v1.21.11-12

/lgtm

/approve


Use NETLIFY_BUILD_VERSION constant

This plugin tries to find out Netlify Build's version by using require('@netlify/build'). However this crashes in production with Cannot find module<EMAIL_ADDRESS>The reason this does not work is outlined in https://github.com/netlify/build/issues/1363.
I just added support for a new constant NETLIFY_BUILD_VERSION (https://github.com/netlify/build/pull/1364), which is a string with the major.minor.patch version of @netlify/build.
At the moment, this constant is undefined, but this should become available within 24 hours. Also, having it undefined is probably better than the current behavior (the build crashes).

Thank you :D

Published in v5.0.2. Seemed rather important :)


fix: Adding timeout to flaky cypress test, to wait for animation to complete

SUMMARY

The remove, and add chart flow test seems to flake out fairly often, and I've seen it do so with errors saying that pointer-events were disabled by a parent's CSS, and that the element was still animating. I'm assuming that all of this is due to the animation and such that takes place when switching tabs. Here's hoping 1s of waiting will properly cover that issue.
BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF

TEST PLAN

Keep an eye on CI!
ADDITIONAL INFORMATION

[ ] Has associated issue:
[ ] Changes UI
[ ] Requires DB Migration.
[ ] Confirm DB Migration upgrade and downgrade tested.
[ ] Introduces new feature or API
[ ] Removes existing feature or API

The way Cypress get works is to constantly retry querying the DOM until the elements that match the selector are found or timeout. https://docs.cypress.io/guides/core-concepts/retry-ability.html
So waiting arbitrary duration wouldn't really help with test flakiness. In fact, there is an ESLint rule to discourage that: https://docs.cypress.io/guides/references/best-practices.html

The problem seems to be though that it IS finding an element that matches the selector, but that element is not yet in a state where it's completely visible (animating) or clickable (with pointer-events:none applied to it). It seems like it's just not waiting for that transition to finish before starting the drag step of the test.

The help link for this error is here; it sounds like we're one of the "edge cases" they discuss, where the test is trying to interact with the element before it's finished animating.

Wow, everyday I learn something new about Cypress. Thanks for the explanation! This sounds like a good theory. Let's hope it really does fix it!


cache for external weather data

Implemented. Next, we need to start persisting the data to postgres. That's a project for after the heating season is over though, low priority.


Rounding and precision settings don't work

Whatever settings I set:
Left Justify Results on/off
Almost Integer Rounding on/off
Canonical Rounding on/off
its always result as on attached screenshot.

Hi @BadIDMan, Left justify result is for aligning result(text) to left not the numbers.
You need to set Canonical Rounding to on like this:

Then the result would be:

With these 3 settings set to "on" result of multiplying these numbers is indeed OK.
I played with these 3 settings but omitted 3 of them to set to "on" :-)
I'm using version 1.1.4

Yea, the settings are sometimes confusing 😅
Glad to know the issue is resolved. Thank You.


Add Shiawase VIP x Kanye and Katie Perry by Catarani

Song Name
Shiawase VIP x Kanye and Katie Perry
Artist Name
Catarani
Source
Youtube
Youtube Link
LztTBMFSZJB505ZS
Direct File Link
No response
Song ID
1266014
Start Offset [ms]
0
Extra
Created from Auto Nong.
Created for level: 86407629

reject
invalid YouTube link


[WiP] Add a simple web-ui

This is a work in progress PR to include a simple web-ui to manage the Kafka topology definition

needs different approach, closing as left over.


bulk write random metrics

Let me start by saying that I have not used this library yet.
I was looking at the readme to see if this library would be useful, but the examples seem to indicate a flaw for a certain use case.
You can create a batch of measurements for 1 metric and write them all at once, but imagine now that you are reading a text file that contains random metrics with perhaps only one value per metric.
Because the write method needs the metric name, this would result in very poor performance, since you cannot create a batch of different measurements of several metrics and send them to influxdb all at once to improve performance.
Did I miss something or does this use case indeed result in poor performance due to writing one measurement at a time?
It seems to me that adding the metric name to the POCO class or the DynamicInfluxRow and removing the argument from the write method would fix this, but I'm not sure if your implementation would support this or if this can be added next to the existing implementation (backwards compatibility and such).

You are somewhat right. The usecase has not been documented, because I have been unsure of how I would like to handle it.
Right now you can implement the interface IHaveMeasurementName, on your POCO class or derivation of DynamicInfluxRow. This will require you to implement a property called MeasurementName, and it should all work from there.
I am thinking of creating an attribute for this instead.


Change AbstractHttpService API to always return HttpResponse instead …

…of passing in DefaultHttpResponse.
Discussion in #850 - this change allows service implementations to choose an HttpResponse that is appropriate for a given codepath, with little to no loss in writability.
HttpRequest and HttpResponse are the entrypoints for creating request and response objects now - DefaultHttpRequest and DefaultHttpResponse and DeferredHttpResponse are also planned to be made private (HttpResponse.from(CompletableFuture) seems like a more easy-to-use and natural API for users than DeferredHttpResponse.delegate so I think we can consolidate on it).
Most respond methods from HttpResponseWriter have been deprecated as it should now be more common to use HttpResponse.of or HttpResponse.from for its use cases. One easy to maintain one is left for advanced use cases.
Result is less exposure of implementation classes for more flexibility, less API duplication, reducing of "two ways of doing something" (I noticed that all of HttpResponse.of methods are accessible as DefaultHttpResponse.of as well, I guess interfaces with static methods should not have public implementations to prevent this sort of confusion), less object allocations / memory usage for many cases like HttpFileService, and probably thrift too.
This is a highly deprecating change, but no explicit breaks. Templates for helping in conversion towards when we actually do remove the APIs below.
Some IntelliJ templates
Converting service implementations
Search template:
protected void doGet(ServiceRequestContext $CtxVar$, HttpRequest $ReqVar$, HttpResponseWriter $ResVar$) {
  $MethodBody$;
}

Replacement template:
protected HttpResponse doGet(ServiceRequestContext $CtxVar$, HttpRequest $ReqVar$) {
  HttpResponseWriter $ResVar$ = HttpResponse.streaming();
  $MethodBody$;
  return $ResVar$;
}

Converting manual initializations
Search:
DefaultHttpResponse $Var$ = new DefaultHttpResponse();

Replace:
HttpResponseWriter $Var$ = HttpResponse.streaming();

Search:
DefaultHttpRequest $Var$ = new DefaultHttpRequest();

Replace:
HttpRequestWriter $Var$ = HttpRequest.streaming();

I wonder if we can:

keep the old methods in AbstractHttpService and deprecate them
add the new methods whose default implementations delegate to the old methods

.. for even smoother migration path?

Good idea! Since the METHOD_NOT_ALLOWED versions are not commonly used, not using FixedHttpRseponse isn't a big deal at all. Updated PR to have no hard breaks.

Created a new label 'deprecation' so that a PR with deprecation can be found more easily. :-)

Rebased

Good ideas - updated with both

I thought I had replied but don't see it - apologies if double-reply. Went ahead and removed isDeferred and its test usage to keep the API cleaner :)

Thanks a lot, @anuraaga !


Fix rendering for InlayHintLabelPart[]

Fixes #31
Reference: https://github.com/simrat39/rust-tools.nvim/commit/a47f5d61ce06a433998fb5711f723773e3156f46

Can you confirm no regressions for other language servers?

Can you confirm no regressions for other language servers?

I've tested using gopls and clangd, haven't seen any regression problems.


fix(GUI): disallow reloading the app in macOS using Cmd+R

Users can currently force the browser window to reload by using Cmd+R in
macOS. The will-navigate even handler in this same file is supposed to
protect us from this case, however its not fired at all just in macOS
for some reason.
As a solution, we attach dummy keyboard shortcut handlers for Cmd+R,
Ctrl+R, and F5, to override the normal browser window behaviour.
The reason behind disallowing reloads is that a reload during a critical
operation such as writing, validation, elevating, unmounting, drive
scanning, etc will cause undefined behaviour, resulting in non sense
errors that we can't solve coming to TrackJS.
See: https://github.com/electron/electron/issues/8841
Fixes: https://github.com/resin-io/etcher/issues/1210
Signed-off-by: Juan Cruz Viotti<EMAIL_ADDRESS>

Couple of typos in the commit-message:
"even handler" -> "event handler"
"its not fired" -> "it's not fired"
"non sense" -> "nonsense"
The local pedant ;-)

Fixed! :)

@jviotti It's worth noting this disables CMD+R across all applications the user has open (e.g. they won't be able to reload a page in Chrome using CMD+R)


Footer doesn't stay on the bottom

Footer sometimes floats to the top with card as form.
< br/>
Please write a clearfix.

You can use the sticky footer if you'd like. http://materializecss.com/footer.html

I figured it out.

I forgot the main.


show-hint: bind "Ctrl-P" to "Up" and "Ctrl-N" to "Down" by default

I think these are de-facto standard keybindings in completion panels.

Only on macOS, right? Could you make it so that these are only added there?

Right. How about e9d3f1e3 (as long as I tried, browser.js seems not to be available for addons)?


Cannot read property 'querySelector' of null

github-calendar.js worked well until yesterday, but I have some issue with github-calendar.js today. console said “TypeError: Cannot read property ‘querySelector’ of null”. I tested it with chrome and safari.

I recommend you to format the code layout for github-calendar.min.js. I found problem at line 53 and 82 but I have no idea to fix it.

i've got the same problem with the plugin i think is somthing about the server or something like that.

Should be fine now! 👍 Fixed via #58


alluxio worker is not scheduled to the intended node

Fluid version: master
Alluxio version: 2.7.0
k8s version: 1.20
I was following https://github.com/fluid-cloudnative/community/blob/master/testcase/fluid-testcase.md#扩容alluxioruntime, and the newly created worker is scheduled on node2, not node1.
When replica is 1:

worker-0 is on ip-10-0-5-77.ec2.internal,
2 nginx pods are on  ip-10-0-6-232.ec2.internal,
1 nginx pod is on ip-10-0-4-247.ec2.internal
Ran kubectl edit alluxiorutime hbase to modify the .spec.replicas to 2:

Worker-1 is scheduled on ip-10-0-4-247.ec2.internal, not the pod with 2 nginx pods.
Is this expected behavior?

The logic of placing worker is not about the number of app pods(using dataset), because we can't predict if there are two pods on the same node, it can consume more data throughput.   It's about one or nothing. we prefer the nodes which the app pods(using dataset) locates rather than no app pods(using dataset).

Thanks for the clarification. Previously I was lucky to see that the new worker happened to be scheduled to the node with 2 app pods.


Verification problem before logging in

There is no way to verify it.

Yes, the current version of Python code cannot solve this problem, and we may try to further optimize it in the future. I suggest you try using the JS version of the code. If you still have problems, please feel free to submit an issue.


"sozo build" failing

It seems that the tag of dojo in Scarb.toml line 11 is not correct. After updating it to the newest tag it works.

fixed in #11


Deploy Kitty Items to Heroku (all-in-one)

This PR modifies the project to accommodate a 'one button deploy' to Heroku. The goal of this PR is to provide the simplest Heroku deployment possible (free tier compatible) , without modifying the previous development setup outlined by the instructions already in the repo.
Notable changes:

Added a Procfile and app.json file to project root
Bash script for installing deps on Heroku
Connect to DB over SSL in production
API serves the React app when process.env.HEROKU_ENV is set.
Added arg parsing to index.ts to specify worker & api startup; worker and API are started separately in dev using concurrently

This is the most UNIX-nerd style nit but do make sure that files end with newlines, otherwise you'll get a complaint from GitHub (see the little red circles with bars through them at the ends of some of the files here). 🙂


Embed Soundcloud: In HTML is wrong padding attribute

After embedding a Soundcloud source in richtext editor it renders like this:

The Soundcloud IFRAME is invisible because of unset height in the wrapper .responsive-object. The padding-bottom property should be set to 400px instead of 0.
This is the CSS used:
.responsive-object {
  position:relative;
}

.responsive-object iframe, .responsive-object object, .responsive-object embed {
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
}

Related: #1495

We now have a WAGTAILEMBEDS_RESPONSIVE_HTML setting which is disabled by default, so I believe this is no longer an issue.


Add information to wiki on hud animations

It's probably worth also checking if I can have animations #base to the customization folder before I get into it as well

dur this exists already https://github.com/rbjaxter/budhud/wiki/Health-&-Ammo-Animations