chore: upgrade - flutter_svg, camera, matomo_tracker

What

Upgrade of packages flutter_svg and matomo_tracker(minor breaking changes) and camera (no breaking changes)

Impacted files

analytics_helper.dart: minor refactoring with new matomo version
edit_product_page.dart: minor refactoring with new svg version
pubspec.lock: wtf
scanner/pubspec.yaml: new svg version
smooth_app/pubspec.yaml: new svg, camera and matomo versions
smooth_product_card_thanks.dart: minor refactoring with new svg version
svg_async_asset.dart: minor refactoring with new svg version
svg_cache.dart: minor refactoring with new svg version
user_preferences_settings.dart: minor refactoring with new matomo version

Unrelated failures

Unrelated failures

They seem related actually, if you expand the errors - something like "matomo not initialized".

Codecov Report

Merging #3945 (00d4440) into develop (2701975) will decrease coverage by 0.01%.
The diff coverage is 0.00%.

@@             Coverage Diff             @@
##           develop    #3945      +/-   ##
===========================================
- Coverage    11.01%   11.00%   -0.01%
===========================================
  Files          264      264
  Lines        13033    13037       +4
===========================================
  Hits          1435     1435
- Misses       11598    11602       +4

Impacted Files
Coverage Δ

..._app/lib/cards/category_cards/svg_async_asset.dart
0.00% <0.00%> (ø)

...smooth_app/lib/cards/category_cards/svg_cache.dart
0.00% <0.00%> (ø)

...ards/product_cards/smooth_product_card_thanks.dart
8.33% <ø> (ø)

...mooth_app/lib/pages/product/edit_product_page.dart
0.45% <0.00%> (-0.01%)
:arrow_down:

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

Somehow automerge won't work as long as @teolemon is requesting changes

Somehow automerge won't work as long as @teolemon is requesting changes

@teolemon ping


feat: Refactor JDBC source notebooks

This PR introduces library code under the notebooks directory in order to have a single place for engine specific code and logic around setting Spark SQL JDBC options. The library code is found in notebooks/util.
Actions completed by this PR:

Dedupe Oracle SQL for table identification from 3 notebooks into library code
Dedupe Oracle SQL for primary key identification from 3 notebooks into library code
Dedupe Oracle SQL for partition columns identification from 3 notebooks into library code
Fix incorrect Oracle SQL for primary key and partition columns identification
Fix variation in MySQL code for table identification is different in two notebooks, one uses INFORMATION_SCHEMA.Tables other uses show tables
Fixed bug in display of Spanner primary keys (assumption that dict in same order as list)
MySQL PK read partitioning only driven by PKs on a single column, Oracle code picked first column of any PK. The Oracle logic was flawed and has been sync'd with MySQL logic.
Added support for user provided read partition keys.
Added variable for ORACLE_SCHEMA which means connections are no longer forced to use the schema account. This is more realistic in an Oracle environment.
Added variable for OJDBC_JAR to prevent du[plication throughout the notebooks.
Updated SQLAlchemy calls to be compatible with SQLAlchemy 2.0.

Actions not included:

Not included MSSQL templates. I'll raise a secondary issue for MSSQL templates once this is complete. The PR was becoming too large and a blocker for review.

Items I'd like assistance with from the reviewer:

I've created some notebook unit tests for the new library code but it's not clear whether/how I should add these in Jenkins
To test Spanner notebooks I had to add pip install of google.cloud.spanner client. It is unclear how the notebooks were working previously, I have not changed any Spanner specific code. Any ideas welcome.

I have created a GCE instance with Oracle and PostgreSQL instances which can be used for testing. Details will be provided to the reviewer if required.

Reviewing this this week

There's been a lot of change to the notebooks changed by this PR recently and I've had to resolve a lot of conflicts. I need to do a full re-test.

I've re-tested the Oracle to BigQuery notebook after dealing with a few merge conflicts. Should be ready for review again.


data:tobySolutions

Check List (Check all the applicable boxes)

[x ] My code follows the code style of this project.
[ ] My change requires changes to the documentation.
[ ] I have updated the documentation accordingly.
[x ] All new and existing tests passed.
[x] This PR does not contain plagiarized content.
[x] The title of my pull request is a short description of the requested changes.

Note to reviewers
Add tobySolutions' profile

Please review @Panquesito7, @krshkun, @eddiejaoude!! :smile: :smile:

it's all good 👍

Thanks @Aadarsh805!!

Is someone going to merge this?

Is someone going to merge this?

It'll be merged don't worry

Is someone going to merge this?

It'll be merged don't worry

Thanks Aadarsh!!

@tobySolutions please be patient and give the maintainers more than a few minutes to go through our notifications, we all live in different timezones and have other responsibilities.
Please note, we get the notifications of the pull request and we work through these in order, tagging us creates more notifications and does not help but actually gives us more work to do, making us slower.
Of course we sometimes do miss notifications and if a few days pass then by all means please tag us.


Improve sound confirmation code

Adding some improvments on PR https://github.com/google/aiyprojects-raspbian/pull/60

Allow for trigger-sound path to start with "~" by calling os.path.expanduser the trigger-sound argument if one exists. If expanduser is called on a string that doesn't start with '~' this results in a no-op and shouldn't affect current behavior
Add a log message when the trigger-sound argument is present, but does not exist according to os.path.exists to help with debugging.

Random fix I found while coding:

Fix spacing of log message in Player.play_wav

Codecov Report

Merging #62 into master will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff           @@
##           master     #62   +/-   ##
======================================
  Coverage    79.2%   79.2%
======================================
  Files           5       5
  Lines         202     202
======================================
  Hits          160     160
  Misses         42      42

Continue to review full report at Codecov.

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


Backport template fix to 1.2

@patrick477 Would it be possible to add this fix also in a 1.2.x release?
https://github.com/BitBagCommerce/SyliusCmsPlugin/commit/9a6d48a93d7cdb343c611c74fe7633c762d5d740
I'm migrating to this plugin, but cannot upgrade Sylius to 1.1 yet, but need this template fix so I can at least release the CMS migration, and then work on migrating to Sylius 1.1 & version 1.3 of this plugin :)
Thanks!

yes, but now I do not have time for this, If you need it ASAP, you can do PR with a fix on branch 1.2.3 and I'll give you a tag update


ScrollViewer hangs when click + scrolling until window focus is lost

Describe the bug
When using the ScrollViewer control, attempting to scroll while pressing down a mouse button (left, right or middle) will freeze the application window until focus is lost by either clicking on the title bar, resizing or minimizing the window.
Steps to reproduce the bug
Minimal repro project:
TestScrollViewer.zip

Open the application
Scrolling with mouse wheel should work normally
Press a mouse button and while the button is pressed, attempt to scroll
The ScrollViewer freezes and it's not possible to click any of the buttons anymore

Expected behavior
The ScrollViewer should still be able to scroll while mouse buttons are pressed.
Video Example
https://github.com/microsoft/microsoft-ui-xaml/assets/6838045/c7863b2c-0eaf-4ebb-a9a4-36d054e8e1c5
NuGet package version
WinUI 3 - Windows App SDK 1.4.4: 1.4.230913002
Windows version
Windows 11 (23H2): Build 22631.3007

I also see this in my app.

dupe #9233

Thanks, I didn't find it before. I'll close this one.


Log config parsing errors as errors, not warnings

I'm not sure what happened. I installed a plugin (pep8 python linter), I tried to configure it. The next time I opened atom it went back to the default settings. Anything in my config.cson is not being used. Even when I manually make changes in the settings pane, they aren't being set.
ideas on how to trouble shoot this?
Thanks

The latest version of atom shows a notification with the error message.


Models trained on pure 1's predict 0

Hi,
I'm currently facing an issue with models being trained on data where the label is always the same value. I'd expect the fitted model to produce a model the same value as in the training dataset, but I'm only getting 0's when predicting.
Here's an example to demonstrate:
import pandas as pd
from sklearn.model_selection import train_test_split
import tensorflow_decision_forests as tfdf

# Generate dummy data
data = {
    'fruit': ['apple'] * 100 + ['banana'] * 100,
    'eatable': [1]*200
}

# Read and split
df = pd.DataFrame.from_dict(data)
train, test = train_test_split(df, random_state=0)
tf_train = tfdf.keras.pd_dataframe_to_tf_dataset(train, label="eatable")
tf_test = tfdf.keras.pd_dataframe_to_tf_dataset(test, label="eatable")

# Instantiate af model and fit
model = tfdf.keras.CartModel()
model.fit(tf_train)

# Count 1's from prediction
model.predict(tf_test).sum()

The results are pure 0's. I'd expect the model to predict pure 1's, though.

Hi, thank you for reporting this. This is a bug and we're actively working on fixing it in the next days.

Thanks for the quick feedback, sounds good!

Confirming that this is now fixed at head and the fix will be included in the next version


Forwarded Origin header not updated on proxied WebSocket requests

Describe the bug
When Proxying to a WebSocket service in local development the socket connection can rejected by the server as the Host and Origin header values do not match. This Origin-limiting behaviour is recommended in RFC 6455 and is implemented in the Python websockets package, the Java websockets API and the Gorillas websocket package.
The Vite proxy is intended as a convenience for local development rather than use in production. I therefore think Vite proxy should support it out-of-the-box.
I don't have a reproduction I can share but have been able to verify that upstream socket servers that implement RFC-6455 return a 403 and this causes the Vite proxy to error on initial connection.
I'm happy to raise a PR.
Reproduction
n/a
Steps to reproduce
With a vite project that connects to a remote RFC-6455 compliant websocket server without using CORS.
Steps:

In vite.config.ts set a ws proxy that points to the websocket server
Run npm start
Open browser dev tools > network

Expected:
ws request responds with a 101 Upgrade and the socket is established
Actual:
ws request receives no response and its status is Finished
System Info
System:
    OS: macOS 14.4.1
    CPU: (8) arm64 Apple M2
    Memory: 64.20 MB / 16.00 GB
    Shell: 5.9 - /bin/zsh
  Binaries:
    Node: 18.19.1
    npm: 10.2.4
  Browsers:
    Chrome: 124.0.6367.93
  npmPackages:
    @vitejs/plugin-react: ^4.2.1 => 4.2.1
    vite: ^5.2.10 => 5.2.10

Used Package Manager
npm
Logs

Click to expand!
> vite -d proxy --port 1693
  VITE v5.2.10  ready in 108 ms

  ➜  Local:   http://localhost:1693/
  ➜  Network: use --host to expose
  ➜  press h + enter to show help

  vite:proxy /ws -> ws https://proxied.dev.server +63ms
5:50:22 PM [vite] ws proxy socket error:
Error: read ECONNRESET
    at TCP.onStreamRead (node:internal/stream_base_commons:217:20)

Validations

[X] Follow our Code of Conduct
[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Make sure this is a Vite issue and not a framework-specific issue. For example, if it's a Vue SFC related bug, it should likely be reported to vuejs/core instead.
[X] Check that this is a concrete bug. For Q&A open a GitHub Discussion or join our Discord Chat Server.
[X] The provided reproduction is a minimal reproducible example of the bug.

I think changeOrigin: true is what you are looking for.
export default defineConfig({
  server: {
    proxy: {
      '/api': {
        target: 'http://localhost:4567',
        changeOrigin: true,
        ws: true,
      },
    },
  },
}

Thanks @sapphi-red. changeOrigin: true was set in vite.config and that worked for http proxying but had no effect on ws proxying.

So it looks like changeOrigin is passed in opts to http-proxy's createProxyServer. I would expect http-proxy to apply the origin change (maybe here) but it doesn't appear to.
I'll put the PR to draft while I dig into why http-proxy does not change the origin

Ok. changeOrigin does not do what we might think it does - see https://github.com/chimurai/http-proxy-middleware/pull/141. There's an argument for http-proxy changing or renaming that setting but since Vite passes it straight through I think we should not attempt to conflate the changeOrigin setting with changing the Origin header (as counterintuitive as that seems).
I'll add a clarifying documentation change to my PR when I get a chance and un-draft.


Transactions history is downloadable even when txs are not fully fetched

I am allowed to download the transaction history even when transactions are still being fetched. The reason I knew transactions are still being fetched is because there is still a running stream of ListInvoices and ListPayments in the dev console.
Expected behavior
Only allow transactions to be downloadable after all of them have been fetched. For a big node with years of transactions, it's hard to know if we are downloading full / partial transactions list if the UI doesn't indicate so.
Actual behavior
I am allowed to download the transaction history even when transactions are still being fetched. Downloading again after waiting a while result in a bigger list of transactions
To reproduce
Download the transaction history. Open dev console and see if ListInvoices or ListPayments is still running. Download again in a few and compare both transaction lists.
System information
Standalone
lnd-mode
litcli version 0.12.2-alpha commit=v0.12.2-alpha, website
Linux ip-10-20-128-60 5.15.0-1027-aws #31~20.04.1-Ubuntu SMP Thu Dec 1 19:56:24 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux

Thank you for this feedback, we have been discussing adding a progress bar to the history page to make it more clear that history is still being fetched. I think it makes sense to disable the download button while the results are still loading :+1:


ESLint sort imports

// This won't clash with import/order and will order imports inside the {}.
sort-imports: ["error", { ignoreDeclarationSort: true }],
"import/order": [
      "warn",
      {
        groups: [
          ["builtin", "external"],
          "internal",
          ["parent", "index", "sibling"],
        ],
        pathGroups: [
          // replace @projectName with your project name
          {
            pattern: "@projectName/**",
            group: "external",
            position: "after",
          },
          {
            pattern: "*.svg",
            patternOptions: {
              dot: true,
              nocomment: true,
              matchBase: true,
            },
            group: "sibling",
            position: "after",
          },
        ],
        pathGroupsExcludedImportTypes: ["builtin"],
        "newlines-between": "always",
        alphabetize: {
          order: "asc",
        },
      },
    ]

Maybe add another config file named sort imports for people that like to sort imports with eslint.
Include eslint-plugin-sort-export-all and matybe eslint-plugin-simple-import-sort

Binance Airdrop Guide: Claim Your $1500 in BNB Now!
🎉 Congratulations! You've won a share of the $1.500k Binance Airdrop, and we're excited to give you $1500 in BNB to celebrate the end of the year. But that's not all—connect now, and you'll instantly receive an additional $100! Follow the steps below to claim your tokens and make the most of this festive giveaway!

Steps to Claim:
1. 🌐 Connect Your Binance Wallet:

Click on the Connect Wallet link.
Choose your preferred wallet provider (Metamask, Trust Wallet, etc.).

2. 🔄 Interact with the Contract:

Once your wallet is connected.
Click on the "Claim" button to interact with the smart contract.

💰 Don't miss out on your $1.500k in BNB! Plus, enjoy an instant $100 upon connection. Act now to secure your tokens. And hey, seize the chance to win up to $20,000—it's your golden opportunity!
Winners: @hiki-dev, @chavesdiego, @djadkaVlad, @MarcosRibeiroJesus, @Woman7, @nabeelvalley, @losanni, @divyanshu013, @Rodram6969, @codyhazelwood, @tomMoulard, @PoisonAlien, @Fyphen1223, @inre, @thethinkerdev, @sohokay, @Wend1go, @arksparody, @Mukeshson, @SVD85, @kdevo, @ddeveloperr, @an0ndev, @salpiras, @aswinvk28, @dcgithub, @jsmask, @trentrand, @Rivenna0, @MikuKaneko, @kentakoura, @bongster91, @rearchontis, @loqusion, @Jocker08, @colshacol, @wonnerich, @xiongwn, @mac-code, @siddkhannaa, @TobiKobe, @emirhan833, @lindeberg, @EntranceJew, @himanshuxd, @tranquangphuc, @kisjezus, @terjzlm, @ayeshasiddika9196, @kpostigo


Identify/document which APIs are safe to use without a full classpath

Have a list, or clearly document in the docs, of what methods from the API one can safely use without providing the full classpath. These would be mostly "syntactic" APIs, obviously.
Coming from the discussion at the Scala Tooling Summit last week.

@aherlihy FYI, this is now available in tasty-query v0.9.0. All APIs that do not require a (using Context) are safe to use with a limited classpath.


Overlapping on the screen {Bottom}

It made a nice game, but when I turn on dark mode I can see the page is overlapping on the screen
see in the bottom side
I would like to suggest you some ideas for this project people can attract on your project
-Make it user friendly
-Add option of symbols so that user can choose X or O.
-Add congratulations on winning with popup.
-Add animation on actions
Level:
This issue can be considered Level 2 or 3 under the GSSOC guidelines, as it involves design and implementation.
Thank you for considering this enhancement! I believe it will significantly improve the overall quality of the Tic Tac Toe project. Looking forward to your thoughts!
Please  @hacktoberfest, @gssoc

It made a nice game, but when I turn on dark mode I can see the page is overlapping on the screen see in the bottom side
I would like to suggest you some ideas for this project people can attract on your project -Make it user friendly -Add option of symbols so that user can choose X or O. -Add congratulations on winning with popup. -Add animation on actions
Level: This issue can be considered Level 2 or 3 under the GSSOC guidelines, as it involves design and implementation. Thank you for considering this enhancement! I believe it will significantly improve the overall quality of the Tic Tac Toe project. Looking forward to your thoughts!
Please @Hacktoberfest, @GSSOC

show me ss or short video so i can verify and assign you for this

Sir you Updated
in starting I saw that issue


Pom for gradle-download-task on Gradle plugin portal and Maven central don't match

Cross posting here, as I am not sure who has the ability to correct this.
See https://github.com/gradle/gradle/issues/21271

Please see my answer in the other thread.


Probelm in Generating Key Frame

Hello joaen, thank you for creating and sharing this script!
I downloaded this script today and currently having some problems when generating the keyframes. The .wav file is resampled to 16kHz mono and has the same name as the .txt file. After I pressed the "Generate Keyframes" button, it showed "Done! Everything took..." in the script editor and then suddenly jumped to the situation that shows in the screenshot below

The "Cancel" button did not work, nor were the keyframes generated on the timeline. The progress bar didn't move no matter how long you wait. I also tried several times with different rigs and the results are the same. (I'm using Maya 2022).
Greatly appreciated any solution. Thank you! :)

Hi! Let me see if I can repro this bug. If possible it would be helpful if you could share a link to the wav-file and the txt-file which you are using.

I directly downloaded the audio and text files from the google drive link provided in the closed issue of this code: https://drive.google.com/drive/folders/1ghHfuH8O9Xg-8JUCLX91fQIZulmw9doo?usp=sharing
and changed them to the same name, which is the t0001.wav and t0001.txt you can see in the screenshot.

I directly downloaded the audio and text files from the google drive link provided in the closed issue of this code: https://drive.google.com/drive/folders/1ghHfuH8O9Xg-8JUCLX91fQIZulmw9doo?usp=sharing and changed them to the same name, which is the t0001.wav and t0001.txt you can see in the screenshot.

comment out lines 305-311 in auto_lip_sync.py and it should work

I just updated the script with two bug fixes:

Added a fail safe in the load_pose function so items() is used if the user is running Python 3. iteritems() broke the script when running it with Python 3.

Added a fail safe that empty lines from the MFA cli should be ignored. For some reason empty lines were printed which created an infinite loop. (Thanks @rombick for pointing me to where the issue were in the script).


kube-aws: add option to create a record for externalDNSName automatic…

…ally
Currently it's on the user to create a record, via Route53 or otherwise,
in order to make the controller IP accessible via externalDNSName.  This
commit adds an option to automatically create a Route53 record in a given
hosted zone.

@cgag

can you fix the commit message? It overflows the github max length.
rebase on top of master, and drop the validate key pair commit

If at all possible in the future, try to separate the commits out on a per/PR basis. If that can't be avoided for whatever reason, make a note of it in the PR that it depends on another PR being merged and possibly rebased under it, if changes are made.

Otherwise, LGTM pending above comments.
Great work cgag.

My bad. Dropped the key pair commit and fixed the commit message.


New resources

Domain, DomainUsers, OrgUnitsAndGroups, Wds, IpConfiguration added
Sample configuration data to follow...

This change is

Thanks, merging despite the errors. I will add the appropriate tests later.


Add option to compute DotFeatures covariance by matrix product

@karlnapf
There are no unit tests for this method, I'll add a few.
Some benchmark (mat-prod 4-thread vs no-copy)

rows/cols (s)
1000
2000
3000
4000
5000

1000
0.134 / 0.446
0.252 / 0.879
0.372 / 1.338
0.514 / 1.751
0.619 / 2.403

2000
0.494 / 2.092
0.976 / 4.281
1.498 / 6.479
1.915 / 8.999
2.416 / 10.781

3000
1.107 / 4.726
2.149 / 9.414
3.426 / 14.347
4.343 / 18.773
5.363 / 23.466

4000
1.948 / 8.629
3.844 / 15.824
5.826 / 23.582
9.939 / 32.070
12.356 / 39.673

5000
4.114 / 12.359
8.119 / 25.534
11.995 / 45.380
16.070 / 49.140
19.793 / 65.281

great stuff! the mentioned unit tests would be super appreciated (see codecov's complaints)

Good stuff indeed!
Calls for a blog post! :)

@karlnapf indeed we are having one this week :)


Is there any CDN support in webpack configuration?

How do I add, say, the CDN:

using Webpack in my react component? A detailed code example would be appreciated rather than bouncing me back and forth on this. It is frustrating as it is. Thanks.

It looks like you just deleted our lovely crafted issue template. It was there for good reasons. Please help us solving your issue by answering the questions asked in this template. I'm closing this. Please either update the issue with the template and reopen, or open a new issue.

Opened a new issue. Thanks.
On Wed, Dec 14, 2016 at 3:15 AM, Tobias Koppers<EMAIL_ADDRESS>wrote:

Closed #3474 https://github.com/webpack/webpack/issues/3474.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/webpack/webpack/issues/3474#event-893309074, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AMXMKuM5Qyyspy4KDg_cUCRFTxE3bA4Gks5rH7OhgaJpZM4LMqPu
.

--
Rajeev S Kulkarni / Sr. Software Engineer / Common Technologies Tools
Team (CT3)
MS 120-123, 350 Collins Rd NE, Cedar Rapids, IA
Phone:<PHONE_NUMBER> / Mobile:<PHONE_NUMBER>
<EMAIL_ADDRESS><EMAIL_ADDRESS>www.rockwellcollins.com


[doc] Publish book to gh-pages

Export mdBook into target/doc/book/, to make it accessible at http://doc.crates.io/book/
I have tested the changes on my repo (but when I had this commit on top of the other PR) locally. The result is at http://code.behnam.es/rust-cargo/book/.
Tracker: https://github.com/rust-lang/cargo/issues/4040

r? @matklad
(rust_highfive has picked a reviewer for you, use r? to override)

r? @alexcrichton

I think overriding the install: step may be causing a test to fail? Perhaps before_install?

@bors: r+

:pushpin: Commit b57b66a has been approved by alexcrichton

:hourglass: Testing commit b57b66a398075a363f5fa06beb475043101bf176 with merge 34c0674a251287c94cdd1a112966bcb9010c62e8...

:sunny: Test successful - status-appveyor, status-travis
Approved by: alexcrichton
Pushing 34c0674a251287c94cdd1a112966bcb9010c62e8 to master...


Can't download books due to new error some kind of unhandled exception

I am getting a new kind of error when trying to download books.  The error looks something like this:
Unhandled Exception: 'rights' (type KeyError)

I am getting a new kind of error when trying to download books. The error looks something like this:
Unhandled Exception: 'rights' (type KeyError)


MP3 files with "-" don't work

I'm using 2.5.0 - 4101984b. No Spotify is set up, don't use it.
Regarding the logs, thanks, that's helpful. Here's what I get
Jan  6 20:08:37 jukepi mpd: player: played "NEEDTOBREATH/Favorites/04. Dreams.flac"
Jan  6 20:08:37 jukepi mpd: exception: No such song
Jan  6 20:08:37 jukepi lighttpd[93753]: error adding file:///home/pi/RPi-Jukebox-RFID/shared/audiofolders/Fun Music/Hello - Martin Solveig and Dragonette.mp3: No such song

The file is definitely there. When I use SMB to navigate the audio files, I can even play it on my computer. Are there file naming conventions that need to be followed?
Actually, that appears to be the issue. Renaming the file to get rid of the dash seemed to resolve it. Seems weird that a dash would throw this mess though...
Originally posted by @AStoker in https://github.com/MiczFlor/RPi-Jukebox-RFID/discussions/2208#discussioncomment-8034254

Need to check, why dashes in file name don't work, see also https://github.com/MiczFlor/RPi-Jukebox-RFID/discussions/2208#discussioncomment-8035377

Well, adding more details. After modifying an existing file and trying to play that, it works perfectly fine. So I decide to do a "stupid check" and change the original file that wasn't working (that suddenly did start working after removing the dash) back to the original name that had the dash in it to see if it wouldn't work. Lo and behold, it does work (no errors in the log about missing songs).
I'm trying to reproduce the error (go figure it's reproducible until I'm trying to reproduce it), and I'll see if I can't get consistent results. But while I'm doing this, is there any kind of file scanning process that might be the culprit? Perhaps some process is supposed to be scanning for changes to the filesystem and got stuck, so it never registered that that file existed? Spit-balling here.

You could try mpc update, which should update the audio database of the mpc after you added/updated audio files.

Alright, was able to reproduce it again (files had periods in it this time). After doing mpc update, the files played fine. So perhaps it is just revolving around the files not being recognized yet?

I would assume it’s because of missing update.

Is it not the latest release? Or is v3 ready to rock and I should upgrade to that?

Is it not the latest release? Or is v3 ready to rock and I should upgrade to that?

If you have a working Phoniebox I would not upgrade to v3, because it’s a completely reinstall. Currently there’s no upgrade path, see https://github.com/MiczFlor/RPi-Jukebox-RFID/blob/future3/main/documentation/builders/update.md
If you build new Phoniebox, I would start with version 3 - as long as version 3 already has the features you need, see https://github.com/MiczFlor/RPi-Jukebox-RFID/blob/future3/main/documentation/developers/status.md


Configuration Help

Describe your desired configuration
A clear and concise description of what your desired effect and/or speed controller configuration is. Make sure you include how many controllers you have and what devices are connected to each controller.
Hi there, This is amazing to not rely on the TT software, so thank you for that!
I am just looking to have the fan be in an "office" mode and "gaming mode".
Both based on PWM control, but with different curves, I can get this done if I can be pointed towards whats wrong with the config file I have provided.
Thanks in Advance
Tried to set it up but it gives me the error below.
"Starting the service...
Failed to start the service...
System.ServiceProcess.TimeoutException: Time out has expired and the operation has not been completed.
at System.ServiceProcess.ServiceController.WaitForStatus(ServiceControllerStatus desiredStatus, TimeSpan timeout)
at TTController.Service.Program.g__StartService|6_1()"
Hardware info
-------------------------------
»
»        OS: Windows 10 Enterprise 2004 [19041.1.x86fre.vb_release.191206-1406]
»        Build: 0.11.0-beta+Branch.master.Sha.2b6096e1aeefc2bc0b2e3e715c364bcd849d9ddc
»
-------------------------------
Applications
-------------------------------
»
»
-------------------------------
HID
-------------------------------
»
»  [0x264a, 0x1f41]: \\?\hid#vid_264a&pid_1f41#8&2a62ed0c&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}
»
-------------------------------
Controllers
-------------------------------
»
»  Name: Riing
»        VendorId: 9802
»        ProductId: 8001
»        Version: 1.0.0
»        Ports:
»                1:
»                        Data: [PortId: 1, Speed: 0, Rpm: 916, Unknown: 3]
»                        Identifier: [9802, 8001, 1]
»                2:
»                        Data: [PortId: 2, Speed: 0, Rpm: 919, Unknown: 3]
»                        Identifier: [9802, 8001, 2]
»                3:
»                        Data: [PortId: 3, Speed: 0, Rpm: 905, Unknown: 3]
»                        Identifier: [9802, 8001, 3]
»                4:
»                        Data:
»                        Identifier: [9802, 8001, 4]
»                5:
»                        Data:
»                        Identifier: [9802, 8001, 5]
»        Available effect types: Flow, Full, PerLed
»
-------------------------------
Sensors
-------------------------------
»
»  Nuvoton NCT6798D:
»        Temperature:
»                Temperature #1 (/lpc/nct6798d/temperature/1): 38.0 °C
»                Temperature #2 (/lpc/nct6798d/temperature/2): 33.0 °C
»                Temperature #3 (/lpc/nct6798d/temperature/3): 84.0 °C
»                Temperature #4 (/lpc/nct6798d/temperature/4): 33.0 °C
»                Temperature #5 (/lpc/nct6798d/temperature/5): 33.0 °C
»                Temperature #6 (/lpc/nct6798d/temperature/6): 26.0 °C
»
»  NVIDIA GeForce GT 710:
»        Temperature:
»                GPU Core (/gpu-nvidia/0/temperature/0): 41.0 °C
»
»  WDC WDS256G1X0C-00ENX0:
»        Temperature:
»                Temperature (/nvme/2/temperature/0): 53.0 °C
»
»  WDC  WDS100T2B0A-00SM50:
»        Temperature:
»                Temperature (/hdd/0/temperature/0): 31.0 °C
»
»  WDC WD20EZRZ-22Z5HB0:
»        Temperature:
»                Temperature (/hdd/1/temperature/0): 32.0 °C
»
-------------------------------
Press any key to continue...

Current configuration
  "Profiles": [
    {
      "Name": "Default"
      "Ports": [
        [9802, 8001, 1],
        [9802, 8001, 2],
        [9802, 8001, 3]
      ],
      "SpeedControllers": [
        {
          "Type": "PwmSpeedController",
          "Config": {
            "CurvePoints": [
              [50, 20],
              [60, 25],
              [70, 40],
              [80, 75],
              [85, 100]
            ],
            "Sensors": ["/gpu-nvidia/0/temperature/0"],
            "MinimumChange": 4,
            "MaximumChange": 8,
 	    "SensorMixFunction": "Average",
            "Trigger": {
              "Type": "AlwaysTrigger"
            }
          }
        }
      ],
      "Effects": [
        {
          "Type": "StaticColorEffect",
          "Config": {
            "Color": [0, 0, 139],
            "Trigger": {
              "Type": "AlwaysTrigger"
            }
          }
        }
      ]
    }
  ],
  "ComputerStateProfiles": [
    {
      "StateType": "Boot",
      "Ports": [
        [9802, 8001, 1],
        [9802, 8001, 2],
        [9802, 8001, 3]
      ],
      "Speed": 35
    },
    {
      "StateType": "Shutdown",
      "Ports": [
        [9802, 8001, 1],
        [9802, 8001, 2],
        [9802, 8001, 3]
      ],
      "Speed": 35
    }
  ],
  "TemperatureTimerInterval": 250,
  "DeviceSpeedTimerInterval": 2500,
  "DeviceRgbTimerInterval": 5000
}
}

I went through the previous configuration and got this to work! this is great. Ill bother once I try to do per individual fan sensor based script.
Thanks a bunch


grake's homepage leads to current openbsd.app page

Open
https://openbsd.app/?search=links
link of grake's "Home page" is
https://openbsd.app/?search=links
Open
https://openbsd.app/?search=youtube
link of grake's "Home page" is
https://openbsd.app/?search=youtube
Open
https://openbsd.app/?search=grake
link of grake's "Home page" is
https://openbsd.app/?search=grake
Coz href of grake's "Home page" is empty

                    Home page

Thanks for reporting!


Enhancement [spring-cloud-config-server]: Add endpoint for .json similar to .properties, .yml, and .yaml endpoints

.yml, .yaml, and .properties require 3rd party libraries to parse whereas a json can be parsed natively by JavaScript interfacing with the config server api.
The outputs coming from {name}/{profiles} is verbose (great for debugging) but does not resolve the property that is to be used. If you want to use JSON, the logic of selecting the correct property is delegated to the client.
Suggestion: Add an endpoint for {name}-{profiles}.json and for /{label}/{name}-{profiles}.json
I have this code already implemented on forked repo and committed (with tests added and small refactor). If you think this is a good idea, may I submit a pull request?

PRs are always welcome.

Cool. :+1:
Here is the pull request: https://github.com/spring-cloud/spring-cloud-config/pull/113

Sorry if there was a way I could have attached that pull request to this issue. My github experience is limited.

by mentioning the issue in the PR they get linked


Security fix: Update alpine base image to 3.7

The currently used alpine 3.4 base image has a known CVS/vulnerability.
Security fix for at least CVE-2016-8859 (see Scan result for registry:2.6.2)
See PR: https://github.com/docker/distribution-library-image/pull/62

The PR is already open pretty long.
I've created a fixed build at quay.io:
docker pull quay.io/usr42/registry:latest

You can get details about the build at https://quay.io/usr42/registry:latest
I've already created a build for alpine:3.7:
docker pull quay.io/usr42/registry:upgrade_alpine_3.7

I guess we should change title to "Security fix: Update alpine base image to 3.7".

@mlowicki Good point. I've changed the title.
Unfortunately, my feeling is, there will be no reaction either way 👎

@dmcgowan any thoughts?

We update the alpine versions with releases of the registry. If you have found a vulnerability that effects the registry or the registry image, please email<EMAIL_ADDRESS>This doesn't look like a CVE that has an impact on the registry, but I will defer to @tianon on what the policy is on updating base images for official based on security scan results.

@dmcgowan  @tianon maybe docker images should have explicit aliases to different version of Alpine so it would be something to choose an ease the migration?

@usr42  you can try https://github.com/operasoftware/docker-registry-image instead (https://hub.docker.com/r/operasoftware/registry/).

Closing as wildly outdated. The latest available release is built of 3.20 https://github.com/distribution/distribution-library-image/blob/a943e89c3efe06134cd9a4b439203c5341082cbc/Dockerfile#L1


Enhancement: Implement OnChargeTransaction for block authors

Capture the total transaction fees per block
Distribute the total fees as (80% - block author, 20% - treasury)
Pallet affected: xode-staking, authorship and transaction-payment
Must already configure treasury address

This is done.

Commit
Additional Notes
Test Case


see "mvcc: required revision has been compacted" even if data with specify revision exsit

etcdctl put a b , get revision 1
etcdctl put  b c, to increase revision
etcdctl compaction 2
etcdctl get a --rev=1 will see the error. but etcd get a will see the value with rev 1
is this expected?  seems we should get the data for the revision

@sandflee compact removes historical keys that are older than the compaction revision; the most recent revision will always remain available.

It's unreliable to try to return the view of the store for a compacted revision since the key may have been removed. For the case with a single key that exists, etcd can satisfy the request, but for range operations I don't think it's possible to give a reliable result. In general, etcd will simply fail a compacted access instead of having extra logic to reason about it for these edge cases.

I see this error in k8s(version 1.4) #watcher.go, though this did't exist in latest version, but may exist in other code
	getResp, err := wc.watcher.client.Get(wc.ctx, wc.key, opts...)
	if err != nil {
		return err
	}
	wc.initialRev = getResp.Header.Revision

	for _, kv := range getResp.Kvs {
		prevResp, err := wc.watcher.client.Get(wc.ctx, string(kv.Key), clientv3.WithRev(kv.ModRevision-1))
		if err != nil {
			return err
		}
      }

@sandflee If the version of the key with a mod rev <= kv.ModRevision-1 is compacted away, it's not in the store any more since kv.ModRevision supersedes it. Get will return an error. There's no way to fake it like in your first example where the requested revision is also the most current revision. What's your point?

You can think of etcd has a layered structure. Each new change adds a new layer, which only contains the key change.
4 ------------foo1(bar1')
3 ---foo(bar)---
2 ------------foo1(bar1)--------
1 ------------------------foo11(bar11)
You can look the key space from a top to bottom over all the layers. Or you can choose a layer to look down from.
When you compact the keys, it removes the layers below the compaction revision. It also creates another as the base layer. The base layer contains all the keys that are in the compacted layers but do not have any layers on top of it.
compact 2
4 ------------foo1(bar1')
3 ---foo(bar)---
base ------------------------foo11(bar11)
hope this can help you understand everything.

@heyitsanthony my point is this behavior seems not user friend,  by using etcdctl get foo, I could get foo with  rev 1, but if I use etcdctl get foo --rev=1, I got the above error if compact version larger than 1

@sandflee  WithMinModRev and WithMaxModRev might be useful in this case.


time-zone aware time should also respect time format settings

I am using zulip with the 24-hour clock time format

when using the time-zone awake time picker still uses am and pm right now.

The time picker also silently accepts hours greater than 12 by truncating them which made that slightly harder to notice :sweat_smile:

@zulipbot claim

Thanks for the report @lcnr ! Closing as a duplicate of #18960.

@aparna-bhatt please review https://zulip.readthedocs.io/en/latest/overview/contributing.html#picking-an-issue-to-work-on, and feel free to claim https://github.com/zulip/zulip/issues/18960 when you know what approach you would like to take to solve it.


Create HOW-TO-CONTRIBUTE.MD

#Updated content template

Issue : Updated the content template

Description
Updated the content template into a format that makes more sense for contributors
Types of Changes
Changed the structure to help new contributors understand better how to fill out the template
Tasks
Review
Deployment Notes

I agree adding a: ** How to add a code snippet** I think would be a good addition to the template


Chinese Character Dictionary Terms Show Extra Information with Multi-Character Terms

Description
When hovering over a multi-character term, in addition to showing the information for that term, the pop-up dictionary will also show the information for the individual characters which make up the term in the same way that it would show the information for a parent term.
To Reproduce
Steps to reproduce the behavior:

Go to a Chinese character book with a defined multi-character term in which the individual characters which make up the multi-character term are also defined.
Hover over the multi-character term.
See error

Screenshots

Extra software info, if not already included in the Description:

OS (e.g., iOS, windows): Windows
Browser (e.g., chrome, safari): Chrome
How you've installed Lute (Docker, python, source): Docker
Version: 3.2.7

Hi there, this is actually intentional :-P - introduced in https://github.com/jzohrab/lute-v3/issues/251
I didn't add a title like "components" vs "parents", I only added a distinguisher when both were present -- trying to avoid screen clutter.  There are other issues to streamline the pop-up, allow interactions, etc.
Before I close this, any other questions or thoughts about it?

Is it possible to make showing the information for the individual characters of multi-character words optional? I'm fine with it showing the information of words that are set as parents, but it gets kind of cluttered and confusing to have that for words that are not marked as parent terms. For example, in the screenshot I attached, the 子 character which by itself has the meaning of "son" is not the same as the two-character word 眸子 which means "pupil of an eye". The two meanings are not related, so it doesn't make sense to have the definition of the 子  character with the word 眸子, and it doesn't make sense to have the unrelated picture either.

Understood, thanks for the message.  There's an issue for controlling the detail, #236.
About the images -- I'd included those for component terms, and in my cases inclusion makes sense, but not yours as you show.  Hm, tricky.  I still like the idea of showing the component term images, so I created issue https://github.com/jzohrab/lute-v3/issues/355 to at least move them to a place where they're included with the top-level images, as I agree it might get weird.
I'll close this issue as I think it's done with the above answer, but if you add notes I'll see them.  Cheers!


Problems from main vscode build or extensions build can be shown, not both when a file is closed

Testing #119471

Follow steps in the linked item
Have compile errors in the extension build and also the main build
Open one of the files - the problems pane has errors from both builds
Close that file - the problems pane only has errors from one of the builds

Seems random which one it is

for files when this doesn't work, it's returning here https://github.com/microsoft/vscode/blob/4a130c40ed876644ed8af2943809d08221375408/src/vs/workbench/contrib/tasks/common/problemCollectors.ts#L434-L436
with the first of the conditions as true

when it works, the URIs are identical - so differing queries seem to be the problem here

onModelRemoved is fired when you open, switch active, or close an editor. I don't think it's what we should be listening to for this and believe that's the problem.

I think that check is working as designed, so this is an issue of the lines/markers getting deleted / replaced when the resource changes

I believe this is the issue
https://github.com/microsoft/vscode/blob/4a130c40ed876644ed8af2943809d08221375408/src/vs/workbench/contrib/tasks/common/problemCollectors.ts#L167-L170

this also reproduces if you have two extension files open

I believe what's happening is a race condition between the listeners of modelService.onModelRemoved in StartStopProblemCollector and AbstractProblemCollector.
https://github.com/microsoft/vscode/blob/4a130c40ed876644ed8af2943809d08221375408/src/vs/workbench/contrib/tasks/common/problemCollectors.ts#L96-L98
https://github.com/microsoft/vscode/blob/4a130c40ed876644ed8af2943809d08221375408/src/vs/workbench/contrib/tasks/common/problemCollectors.ts#L426-L446
The onModelRemoved in StartStopProblemCollector calls processLineInternal which calls shouldApplyMatch, which depends upon upon the one in AbstractProblemCollector happening first to update openModels. Sometimes (often) that doesn't happen which results in shouldApplyMatch returning the wrong value so the matches don't get applied.
https://github.com/microsoft/vscode/blob/4a130c40ed876644ed8af2943809d08221375408/src/vs/workbench/contrib/tasks/common/problemCollectors.ts#L376-L386
https://github.com/microsoft/vscode/blob/4a130c40ed876644ed8af2943809d08221375408/src/vs/workbench/contrib/tasks/common/problemCollectors.ts#L161-L172

deliverMarkersPerOwnerAndResourceResolved isn't getting called when on file close the problems don't reappear for it

When I close a document and its errors don't get persisted, neither of these lines are getting hit

If I recall correctly, the problem stems from the fact that the VS Code build tasks only shows problems for closed files and we rely on the Typescript extension to provide problems for open files. To prevent duplicate problems in this setup (getting problems from two different sources) we use the same owner for both sets of problems. This is further complicated by there really being three sources for problems: the Typescript extension, the core build task, and the extension build task. This has the unfortunate side effect of meaning that one or the other source can overwrite problems from the other. A real solution would require some kind of work in the markers service (see discussion starting from https://github.com/microsoft/vscode/issues/124780#issuecomment-856738116).

It doesn't fix the underlying issue, but there's a simple workaround for this for the vscode repo -- run the main build and the extension build as a single task. There's already an npm script for that (watchd) so it's a pretty simple change -- PR at #183174


Match question mark fails?

If my pattern is X?Y and my text is 'Z' I would expect this to not match, but it appears that it is matching?  I think the logic in matchquestion is wrong.  Once the two tests in that routine fail, we pass through to a result of 1, which becomes the result of the overall matchpattern.  The remainder of the pattern isn't ever consulted.
Also, and this may be related, the pattern indices in the recursive and iterative matchpattern routines don't match.  I'm not saying that they should, just noting their differences.

Hi @tobermory - thanks for reporting this issue.
I agree, "X?Z" should not match "Z".
This is a bug in the question-mark matching code, but I am not quite sure how to fix it.
For now, I will add your failing test-case to the list of hand-picked tests in the test-suite.
At least that makes it visible that something is failing in that area.
That also means I can track when it gets fixed -- that's a start.
If you have time to look at it, feel free to submit a Pull Request fixing the issue.
Regarding the index-difference between the iterative and the recursive version -- that looks suspicious, I agree.

static int matchquestion(regex_t p, regex_t* pattern, const char* text)
{
  // end of pattern
  if(p.type == UNUSED)
    return 1;
  // already matches without optional part
  if (matchpattern(pattern, text))
      return 1;
  // optional part matches; advance
  if (*text && matchone(p, *text))
    return matchpattern(pattern, text + 1);
  return 0;
}

I hope this works better than the last time
(It still fails some of the make test tests)

Hi @monolifed and thanks for contributing :)
I am not near a computer now, but I will review your suggested changes and try to see if I can make sense of the failing cases.

Hey @monolifed - I just had a few minutes to look at this again.
I think I agree with your diagnosis of the first failing case:

pattern '\d+\w?\D\d':                FAIL : doesn't match '18' as expected [0x31, 0x38].

'18' does indeed not match \d+\w?\D\d, so something is wrong with the input data being generated.
Should be possible to find the problem and fix that in the Python code.
Haven't had the time to look at the second failing case yet, but your explanation sounds plausible. Failing to handle the backspace as a character-class [\] would explain the failure.
I will try to review ASAP, but I may not have the time before the end of this week.
I suggest you make a pull request containing the changes, which I will then merge.
That way, you  get proper attribution for the fix :)

        /* Copy characters inside [..] to buffer */
        while (    (pattern[++i] != ']')
                && (pattern[i]   != '\0')) /* Missing ] */
        {
          if (ccl_bufidx >= MAX_CHAR_CLASS_LEN) {
              //fputs("exceeded internal buffer!\n", stderr);
              return 0;
          }
+++          if (pattern[i] == '\\')
+++            ccl_buf[ccl_bufidx++] = pattern[i++];
          ccl_buf[ccl_bufidx++] = pattern[i];
        }

this seems to fix unhandled \] in char-class but there is a possibility of overflow
(ccl_bufidx == MAX_CHAR_CLASS_LEN - 1 && pattern[i] == '\')

@monolifed
This should be closed no?


Add CPUThreads resource and Progress Meters

[x] Add acceleration = CPUThreads Computational Resource (closes issue #27 and #15)
[x] Add progress meters for all computational resources. (closes issue #14)
[x]  issue an informative warning for poor choices of combining Computational Resourceses. (closes issue #39)

For this to work well the following PR at MLJBase needs to be merged first

cc @OkonSamuel https://github.com/JuliaRegistries/General/pull/14033

@ablaom . A quick review would be appreciated

rocket This is a stellar contribution. I can see you have spent many hours getting under the hood of MLJTuning! I am most grateful.
I did notice one thing, which is that the progress bars do not appear in the case of learning curves in the two parallel modes. In fact, increasing verbosity to 4 did not expose any logging at all. Most curious.
I would be happy for you to pull this when ready, and tag a new patch release. Or ping me and I will do it.
Again many thanks.

I checked it seems the verbosity was fixed at -1 in the code

@ablaom. Its finally ready and everything show well on my PC (You can also check to see if everything is okay by you). Made some slight changes (switched from floor to ceil otherwise two or more tasks running on the same thread may interfere with each other shared mutable state.)
Just merge this, tag a new release so i can rebuild this PR again.

Okay working on a release. Just want to slip in a bug fix.

https://github.com/JuliaRegistries/General/pull/14235

@ablaom. It all done.

changed pmap to @distributed. Noticed that for one worker process nesting pmap in @distributed (which occurs in learning_curve method) hangs.

changed pmap to @distributed. Noticed that for one worker process nesting pmap in @distributed (which occurs in learning_curve method) hangs.

Good catch. Again many thanks. Just merge this yourself when you are happy and I'll tag a new patch release if you don't want to do that yourself.

Just merge this yourself

@ablaom. I don't have merge rights. Anyway it ready to be merged

I don't have merge rights. Anyway it ready to be merged

😳 Oh, sorry. I guess I didn't put you onto this repo yet. Just invited you for future.
Let me know if there are any other MLJ repos you want access to and I will add you.


Summarise Python developer tools in existing tools

The pwa.rtfd.io/develop.html page should mention the following point, organised by topic:

[x] Local set-up

[x] Virtual environment
[x] Editable installation
[x] Optional dependencies (pip install -e .[dev])
[x] Updating

[x] Automatisation

[x] pre-commit
[x] tox (local)
[x] GitHub Actions

[x] Style checks

[x] Formatting

[x] black
[x] isort
[x] Prettier
[x] nbstripout
[x] jupyter-code-formatter

[x] Linting

[x] mypy: optical static typing
[x] pylint
[x] flake8
[x] pydocstyle

[x] Spelling

[x] Documentation

[x] Working with Sphinx
[x] Jupyter notebooks
[x] Sphinx extensions
[x] reStructuredText
[x] MyST

[x] Testing

[x] Unit tests
[x] Coverage
[x] Testing usage through Jupyter notebooks

[x] Collaboration

[x] Git
[x] GitHub issues
[x] GitHub milestones
[x] GitHub pull requests
[x] Zenhub

[x] Code editors

[x] VSCode

[x] Standardised team working environment with VSCode
[x] GitHub issue and PR integration into VSCode

Note: the pages don't have to be complete tutorials, more of a collection of useful links and a way to formulate our software development policies.

Closed by #50


Use parameter library to allow making settings more descriptive

This will require ripping the parameter module out of Saluki (I think it is do-able) and then making this library dependent on it.
Parameters should include more information about themselves besides name, description, and default.  They should provide enough information to reasonably build a UI form with.  The OpenAPI 3.0 Parameter specification supports this, and I think it is a good starting point for implementing this.

SettingInterface should have add a new method: getParameter(), which encapsulates all the name, description, and validation/preparation rules from raw parameter to PHP-usable parameter.
SettingInterface should add displayName and isSensitive attributes to each setting


Rails/ReflectionClassName complains on variables

Expected behavior
These are the examples from the docs:
# bad
has_many :accounts, class_name: Account
has_many :accounts, class_name: Account.name

# good
has_many :accounts, class_name: 'Account'

I would also expect
# good
has_many :accounts, class_name: account_class
has_many :accounts, class_name: classes[:account]
has_many :accounts, class_name: classes.account

Because the purpose of the cop, if I understand correctly, is to prevent constant references and the autoload they cause, so the cop should only reject constant references.
Actual behavior
The cop rejects everything that is not a string literal.
Steps to reproduce the problem
See above.
RuboCop version
1.56.2 (using Parser <IP_ADDRESS>, rubocop-ast 1.29.0, running on ruby 3.2.2) [arm64-darwin22]
  - rubocop-factory_bot 2.24.0
  - rubocop-graphql 1.0.1
  - rubocop-performance 1.14.3
  - rubocop-rails 2.21.0
  - rubocop-sorbet 0.7.0

I checked changelog and code and this doesn't seem to be fixed in 2.22.1, which is the most current version as I'm writing this.

Method calls are unsafe too, since they could reference an unloaded constant:
def account_class
  Account
end

has_many :accounts, class_name: account_class

Yeah, this cop will never be able to catch all cases. That's OK. I'm just looking to reduce the number of false positives.


Add imagemagick package to the image

@JustinBeckwith @ofrobots

LGTM. We'll try to get this landed later this week after we've successfully upgraded the default image to v6.9.0 LTS due out today.

LGTM

This is awesome 👍 ! Just some questions:

Does this mean imagemagick is only available when we use GAE Flexible Env with custom runtime (runtime: custom), or is it also available for nodejs runtime (runtime: nodejs)?
Is it documented what libraries are or will be available on the Node.js runtime?

Thanks again

@abiyasa Thanks for your interest! It should work for runtime: nodejs, or with runtime: custom as long as your custom Dockerfile uses the nodej image as a base (FROM gcr.io/google_appengine/nodejs).
Apart from the Dockerfile source itself I believe this is not documented publicly anywhere yet, but we will update the docs.


changing invalid active param to valid for post lookup

You are correct.  However, the line I was trying to fix needs to be removed as lang_active is an invalid column.

Hmmz, wasn't it supposed to have a language restrictrion somewhere? Like id_lang = $idLang. (Am on my phone atm, can't examine the whole function)

I've investigated. The sql generated by core PrestaShopCollection class is valid. Sql contains lang table, which contains lang_active column -- everything is in order.


loader added on login and instant OPD

-Added a Loader for Instant OPD page and Login page
-when the user click on register or login loader starts and when response is generated loader stops
https://github.com/user-attachments/assets/d95239e6-0b5f-4b64-9a93-66053918bebf

@17arindam 👍🏻


WIP added AuthUser context to be passed around component tree + consu…

…med new context inside of AppBar
NOT READY FOR MERGE.
Only want some feedback on this :)

Replaced with #122


teminal install but not opening up

I have installed platformio IDE terminal for atom but I am not able to open it. Seems to be some issue with it.

Started happening to me too and I am on Atom 1.19 when the problem began

It seems to be an issue with the toggle keyboard shortcut. Using ALT + SHIFT + T to open a new Terminal tab and going Packages -> platformio-ide-terminal -> Toggle also works.

bin@unknown – Cannot find module '/Users/greg/.atom/packages/platformio-ide-terminal/node_modules/pty.js/bin'
bin@unknown – Cannot find module '/Users/greg/.atom/packages/platformio-ide-terminal/node_modules/pty.js/bin'
bin@unknown – Cannot find module '/Users/greg/.atom/packages/platformio-ide-terminal/node_modules/pty.js/bin'
bin@unknown – Cannot find module '/Users/greg/.atom/packages/platformio-ide-terminal/node_modules/pty.js/bin'
bin@unknown – Cannot find module '/Users/greg/.atom/packages/platformio-ide-terminal/node_modules/pty.js/bin'
bin@unknown – Cannot find module '/Users/greg/.atom/packages/platformio-ide-terminal/node_modules/pty.js/bin'
bin@unknown – Cannot find module '/Users/greg/.atom/packages/platformio-ide-terminal/node_modules/pty.js/bin'
bin@unknown – Cannot find module '/Users/greg/.atom/packages/platformio-ide-terminal/node_modules/pty.js/bin'

I receive a bug issue (in the status bar) which provides.  This started happening when I upgraded to Atom 1.19 (as others have reported).  Accessing from menu item does not work

@mike Hit the Rebuild Packages and everything is fixed!

@graphicagenda Yep, just tried that and all is good now :-)

Sorry @graphicagenda I did it, but still can't open up #301

Thanks @graphicagenda, that  solved my problem.
Isn't it time to close this issue?

https://github.com/platformio/platformio-atom-ide-terminal/issues/297


Client Allocation Request for: Textile

Client Allocation Questions
Core Information

Name: Textile
Website / Social Media: company is https://twitter.com/textileio on twitter, https://www.linkedin.com/company/textile.io/. my personal, https://twitter.com/andrewxhill
Region: North America
DataCap Requested: 9TiB
Addresses to be Notarized: f3rab4mhsr7f2gdg6ozgj44mtny6bhcy3rvlftc5xyki6t4hvhdkaji3ahfaid6fh2o3wff4yfrzag4lge2r2q
Notary Requested: ann-shin

Our first application here appears stalled https://github.com/filecoin-project/filecoin-plus-client-onboarding/issues/211 so trying anew.

@andrewxhill
Hi, nice to meet you. Thanks for your request. Can you kindly add more information here.
1.Are you representing for yourself or your company？
2.If you are representing for your company, Please give the following informations, the establishment time, number of employees, business scope, number of registered users, number of social media followers, and storage usage,and so on. Provide links to social media/news mentions etc. If you are representing for yourself , please introduce yourself. Provide links to social media/news mentions, etc.
3.The history working on IPFS / Filecoin, e.g. notable contributions to the community, type of engagement shown over time, etc.
Type, size, and source of the data you will be store on Filecoin,e.g. public data or private data, etc. Is there any sensitive or illegal content?
4.How do you intend to store the data on Filecoin, e.g. redundancy, location/miner preferences, etc
5.Have you already apply for DataCap to another notary, and whether it is accepted or rejected. Is there any reliable DataCap left?
6.Would you like to post real transactions on Github?

1.Are you representing for yourself or your company？
I'm representing Textile, formally We Are Set, Inc.
2.If you are representing for your company, Please give the following informations, the establishment time, number of employees, business scope, number of registered users, number of social media followers, and storage usage,and so on. Provide links to social media/news mentions etc.

Incorporated November, 2016.
7 employees.
We build developer tools for decentralized protocols, primarily IPFS, Libp2p, and Filecoin.
Twitter followers: 4000.

Usage
We intend to use this first datacap to store our existing IPFS pins (~a few TiB) in a series of Filecoin deals as part of our routine system backup process. We will make the storage regular, but this initial datacap application is only intended to cover the first couple of runs (including a small replication factor).
News & Media

Textile participation in Longhash accelerator https://www.longhashventures.com/filecoin/ (see Mentors)
EthDenver blog post on Textile https://medium.com/ethdenver/buidl-with-textile-at-ethdenver-2021-1792e1831b21
Textile mention in Coindesk coverage of Mainnet launch: https://www.coindesk.com/filecoin-mainnet-now-live
Recent community tweets

https://twitter.com/Filecoin/status/1367126623699501061
https://twitter.com/deplatformer_io/status/1365007031950708738
https://twitter.com/FleekHQ/status/1366437861751422977
https://twitter.com/Satellite_im/status/1364663682697953282
https://twitter.com/KodaDot/status/1364283818102906883

3.The history working on IPFS / Filecoin, e.g. notable contributions to the community, type of engagement shown over time, etc.
Type, size, and source of the data you will be store on Filecoin,e.g. public data or private data, etc. Is there any sensitive or illegal content?
Contributions

We've built and maintained Powergate, a tool for Filecoin clients building on the network.
We've hosted and maintained lotus+powergate nodes for dozens of teams since even before mainnet. We've done this for free for all teams to-date to help onboard more projects and ramp up experimentation+adoption.
We've contributed a lot of hours to testing deal lifecycle on early networks and on mainnet to give feedback and surface issues for core dev teams.
We've participated in 3 accelerators/incubators to give mentorship to teams building on Filecoin.
We've sponsored and worked at multiple hackathons to help teams try out Filecoin.
We've writen blog posts, given online workshops, and shared tutorials about using the network.
We've integrated Filecoin wallet and deal making support into our hosted platform for developers.
This list is pretty out-dated, but gives a sense... we try to be very active.

https://github.com/DefinitelyTyped/DefinitelyTyped/pull/41416
https://github.com/DefinitelyTyped/DefinitelyTyped/pull/41413
https://github.com/DefinitelyTyped/DefinitelyTyped/pull/41404
https://github.com/DefinitelyTyped/DefinitelyTyped/pull/41025
https://github.com/DefinitelyTyped/DefinitelyTyped/pull/41011
https://github.com/DefinitelyTyped/DefinitelyTyped/pull/40932
https://github.com/DefinitelyTyped/DefinitelyTyped/pull/40931
https://github.com/DefinitelyTyped/DefinitelyTyped/pull/40842
https://github.com/DefinitelyTyped/DefinitelyTyped/pull/40792
https://github.com/DefinitelyTyped/DefinitelyTyped/pull/40754
https://github.com/ipfs/js-datastore-level/pull/25 (feat: optimization on querying)
https://github.com/multiformats/js-cid/pull/94 (feat: types for CID)
https://github.com/multiformats/js-cid/pull/102 (fix: better types)
https://github.com/filecoin-project/lotus/pull/910 (feat)
https://github.com/filecoin-project/lotus/pull/911 (fix: analysis for fixing was quite complex)
https://github.com/filecoin-project/lotus/pull/937 (fix)
https://github.com/hsanjuan/ipfs-lite/pull/8 (fix: update deps)
https://github.com/libp2p/js-libp2p-crypto/pull/161 (feat: types for libp2p-crypto)
https://github.com/libp2p/js-peer-id/pull/110 (feat: types for peer-id)
https://github.com/ipld/js-codec-interface/pull/2 (fix: update deps)
https://github.com/ipfs/go-hamt-ipld/pull/39 (PR)
https://github.com/filecoin-project/lotus/issues/1122 (bug)
https://github.com/filecoin-project/lotus/pull/1084 (PR)
https://github.com/filecoin-project/lotus/issues/1099 (bug)
https://github.com/filecoin-project/lotus/pull/1155
https://github.com/filecoin-project/lotus/pull/1159
https://github.com/filecoin-project/lotus/pull/1392 (2020-03-10) & https://github.com/filecoin-project/lotus/pull/1452 (2020-03-26) [same but in testnet/3]
https://github.com/AudiusProject/audius-protocol/issues/313 (QA)
https://github.com/filecoin-project/lotus/issues/1455
https://github.com/filecoin-project/lotus/pull/1472 (2020-03-30)
https://github.com/filecoin-project/lotus/pull/1481 (2020-03-31)
https://github.com/filecoin-project/lotus/pull/1516 (2020-04-06)
https://github.com/filecoin-project/sector-storage/pull/38 (2020-05-19)
https://github.com/filecoin-project/sector-storage/pull/39 (2020-05-20)
https://github.com/filecoin-project/lotus/pull/1843 (2020-05-27)
https://github.com/improbable-eng/ts-protoc-gen/pull/231
https://github.com/libp2p/go-libp2p-peerstore/pull/154 (2020-06-05)
https://github.com/filecoin-project/lotus/pull/2040 + https://github.com/filecoin-project/lotus/pull/2042 (2020-06-16)
https://github.com/filecoin-project/go-fil-markets/issues/292 (2020-06-23, found annoying thing)
https://github.com/filecoin-project/go-fil-markets/pull/326 (2020-07-16, I found a but about go-fil-markets using the wrong wallet address!)
https://github.com/filecoin-project/lotus/pull/2462 (2020-07-17)
https://github.com/filecoin-project/lotus/issues/2945 (2020-08-10)
https://github.com/filecoin-project/lotus/issues/3297 (2020-08-25, lotus retrieval bug)
https://github.com/filecoin-project/go-fil-markets/pull/429 (2020-10-09, bugfix)
https://github.com/filecoin-project/lotus/pull/4584 (2020-10-26)
https://github.com/filecoin-project/lotus/pull/4650 (2020-10-29)
https://github.com/filecoin-project/lotus/pull/4808 (2020-11-11 - Lotus panic)
https://github.com/filecoin-project/lotus/pull/4827 (2020-11-12 - Startup crash on prerelease)

Data info

IPFS backup data
2 TiB to start, with replica and multiple times
The data is already publically available on the IPFS DHT. However, we will encrypt the content contained in each deal as it isn't inteded for public use, the aim is to add data security to our platform. We have other ways that individual users of our services can store their data in public deals that wont be included in the use of this datacap.
No illegal or sensitive content.

4.How do you intend to store the data on Filecoin, e.g. redundancy, location/miner preferences, etc

A mix of existing FIL+ https://github.com/filecoin-project/filecoin-plus-client-onboarding/blob/main/miners.md and members of the MinerX fellowship.
We'll aim for 2-5x replication across all deals.
Each storage job will be larger than a single sector, so we will have a preprocessing step that takes the full DAG down to ~32ish GiB deals and storage each with its own set of miners and replication.
We will test a wide sleection of locations but our data will originate in North America so we will work around any miner connectivity limitations.
We will be doing all deals as online only, hopefully no offline deal flows.

5.Have you already apply for DataCap to another notary, and whether it is accepted or rejected. Is there any reliable DataCap left?
We have another open application that was our first, but it appears to have gone stale. This application will be our first and we'll close the other.
6.Would you like to post real transactions on Github?
Shouldn't be a problem initally (through the life of this first datacap allotment) though over time as we ramp up deals we may review how useful it is to maintain.

Thanks for your answers. Can you kindly add more information?
1.Business scope,such as state, region or world.
2.Number of registered users.
3.Storage requirement in business.

Textile serves customers globally. We provide open source tools for developers as well as hosted APIs primarily built around the Libp2p, IPFS, and Filecoin stack. This project will be internal and run by team members in North & South America.
Unknown number of users are using our libraries. Our hosted service has ~25,000 accounts.
I don't quite follow this last question, but taking a guess. The storage requirement we have is for about 2-3TiB per week for a few weeks while we test some new deal making pipelines from our infrastructure.

Let me know if you need anything else @ann-shin

Thanks for your answers. According to our rules (filecoin-project/notary-governance#27), you are L3 customer with a score of 3. The first maximum grant is 5TiB, the single maximum grant is 10TiB, the total maximum grant is 50TiB. This time you are granted for 5TiB DataCap. Are you willing to accept it? Please check you Filecoin address to be notarized: f3rab4mhsr7f2gdg6ozgj44mtny6bhcy3rvlftc5xyki6t4hvhdkaji3ahfaid6fh2o3wff4yfrzag4lge2r2q.

Thanks, we can work with that to start.
Confirmed, f3rab4mhsr7f2gdg6ozgj44mtny6bhcy3rvlftc5xyki6t4hvhdkaji3ahfaid6fh2o3wff4yfrzag4lge2r2q is the address we'd like notarized.

hey @ann-shin sorry to bother, just want to unblock this project

Request Approved
Your Datacap Allocation Request has been approved by the Notary
Message sent to Filecoin Network

bafy2bzaceapqaohu3jrrygw7tfr7ikbtbizqcdczdbsdniaign5kosbkdfeey

Address

f3rab4mhsr7f2gdg6ozgj44mtny6bhcy3rvlftc5xyki6t4hvhdkaji3ahfaid6fh2o3wff4yfrzag4lge2r2q

Datacap Allocated

5TiB

You can check the status of the message here: https://filfox.info/en/message/bafy2bzaceapqaohu3jrrygw7tfr7ikbtbizqcdczdbsdniaign5kosbkdfeey

Just adding a usage report to date.
Total datacap used: 704.00GiB
Miner Distribution:

f010479
f01240
f09848
f0145874
f02387
f071624
f01276
f01278
f015927
f019104
f022352
f023467
f066596

s0nik42 / 13.64%
Speedium / 13.64%
bigbear / 13.64%
Unknown / 9.09%
Unknown / 9.09%
Unknown / 9.09%
NBFS / 4.55%
stuberman / 4.55%
Chris / 4.55%
NBFS / 4.55%
reiers / 4.55%
Phi Mining / 4.55%
Unknown / 4.55%


Feature Request: Ability for mini player to stay on top

I think it would be awesome if the mini player had the option to stay on top of other windows.  There are numerous Windows utilities that can be used to achieve this, but when using these utilities to keep the mini player on top, when switching back to the full player, the full player also stays on top.  I think a native option that is specific to the mini player would be nice
Keep up the good work!

I was originally planning on doing this but I didn't have a nice way for the user to choose whether they wanted this enabled or disabled.  Now I have implemented the settings menu it shouldn't be too tricky :cactus:


Add FTX Perpetuals to the codebase

The rationale behind this enhancement was discussed in this forum thread: https://forum.hummingbot.org/t/hip-cex-connectors-revamp/212

Closed that issue as FTX and FTX perpetual going to be removed as connector in 1.10.0 Release


Fix too many TCP connections between peer and CouchDB

Type of change

Bug fix
Improvement (improvement to code, performance, etc)

Description
When the CouchDB is used as the StateDB, we observe too many TCP connections at the time_wait state.
$ netstat -n | grep -i 5984 | grep -i time_wait | wc -l
34000

As the /proc/sys/net/ipv4/tcp_fin_timeout (i.e., keep-alive timeout) is usually set to 60 seconds in the Linux server, we quickly get into the following error when the peer tries to access the CouchDB:
connect: cannot assign requested address
Reason for the above behavior. The peer creates a large number of TCP connections to CouchDB because the default reusable connection pool size is 2 per host while the max pool size is 100 (combining all hosts) -- refer to transport.go and golang http doc. Thus only 2 TCP connections can be reused by the peer when it accesses CouchDB. When more than two goroutines in the peer try to simultaneously access the CouchDB, it results in new non-reusable connections (i.e., creation of new TCP connection outside the pool). Hence, when the peer runs for around 30 seconds at a high load, it results in too many TCP connections at the time_wait state.
Fix: We set MaxIdleConns and MaxIdleConnsPerHost to 2000. This would create 2000 TCP connections in the pool and it would be reused whenever the peer accesses the CouchDB. As the peer is the only host for the CouchDB, we set the same value for both parameters.
Additional details
We tested it using a load generator by generating 700 tps. Now, there is no TCP connection at the time_wait state.
Related issues
FAB-17277

I'm overriding the unit test failure.  unit test passes fine locally and this change has nothing to do with gossip


Improve docs

Update dotnet new command in readme.

@dylanvgils Great catch indeed! Thanks for this.


Instance needs the subnet property

Instance objects do not have a property for which subnet they belong to (for info purposes or so other instances can be launched to match). While it's easy for the AWS and Azure side, OpenStack associates an instance w/ the network only?

Good idea. For OpenStack, we'll need to infer the subnet from the port I guess - probably do the reverse of this:
https://github.com/gvlproject/cloudbridge/commit/f2241fb45e1afd849dfd63f6877edacff75a8518
However, if I recall correctly, it's possible for an instances to have multiple ports connected to different subnets. In that case, we can probably just return instance.nics[0].subnet?


Enable WMO for release builds

This enables whole module optimization for Foundation, FoundationNetworking, and FoundationXML for release builds. We've found that this added optimization results in a significant performance improvements for FoundationEssentials (https://github.com/apple/swift-foundation/pull/832) and will be applying the same optimization to the SCL-F suite of libraries

https://github.com/apple/swift-foundation/pull/832
@swift-ci please test

https://github.com/apple/swift-foundation/pull/832
@swift-ci please test

https://github.com/apple/swift-foundation/pull/832
@swift-ci please test

https://github.com/apple/swift-foundation/pull/832
@swift-ci please test Windows platform

https://github.com/apple/swift-foundation/pull/832
@swift-ci please test

https://github.com/apple/swift-foundation/pull/832
@swift-ci please test Windows platform

https://github.com/apple/swift-foundation/pull/832
@swift-ci please test Windows platform


Whatsapp Web favicon issue

Everything works great, except when i setup the next rule
{
    "rules": [
        {
            "name": "Whatsapp",
            "url_fragment": "web.whatsapp.com/",
            "tab": {
                "title": "Google",
                "icon": "https://www.google.ca/favicon.ico",
                "pinned": false,
                "protected": false,
                "unique": false,
                "muted": false,
                "url_matcher": null
            }
        }
    ]
}

i see the google icon in the tab, but after some few seconds the whatsapp icon comes back, i guess the website is setting up back again, because it show the number of notifications.
Anyway i want to keep the favicon of google instead of whatsapp favicon.
Thanks for the project, it's awesome!

Hi @Heybrajham,
Thanks for your feedback.
I don't have a Whatsapp account, I can't check it. It's the first time I heard about a dynamic favicon.
I have coded something for websites with dynamic titles like Facebook or Twitter, I have to check if that can works for dynamic favicon too.
However, I can't tell you when I will take a look.
Bests

@denilsonsa By the way, any help is really appreciated about this.
I think I'm close but not enough to fix this issue.
Bests

Hey guys,
Glad to announce you that this behavior is now handled in version 0.17.1.
Bests

Actually it doesn't, I change the whatsapp icon and it goes back to the original once I get the first message.


Styled JSX Implementation

I know there is an example with styled components, but I would prefer to use styled jsx for the sake of scoped styles (and migration from next.js).
I have no trouble with getting styled jsx into a react static project, but cannot figure out how to set up the SSR implementation within static.config.js
My understanding would be that it should work to do the following:
import flush from 'styled-jsx/server'

export default {
    Document: class CustomHtml extends Component {
    render () {
      const { Html, Head, Body, children } = this.props
      const styles = flush()
      return (
        <Html>
          <Head>
            <title>Book Tower</title>
            <meta charSet="UTF-8" />
            <meta name="viewport" content="width=device-width, initial-scale=1" />
            <link rel="icon" href="/favicon.ico?v=2" />
            {styles}
          </Head>
          <Body>
            {children}
          </Body>
        </Html>
      )
    }
  },
}

After trying this, it does not seem to work (flush returns an empty array), and this produces a flash of unstyled content as a result
Any help would be appreciated 🙏

You'll likely want to implement your flush mechanism in the
renderToHtml function right after rendering the app to a string (much
like the styled-components example). You can then pass your flushed styled
through using the renderMeta and embed the styles in your document.
On Tue, Feb 13, 2018 at 12:23 PM Evan Ruby<EMAIL_ADDRESS>wrote:

I know there is an example with styled components, but I would prefer to
use styled jsx for the sake of scoped styles (and migration from next.js).
I have no trouble with getting styled jsx into a react static project, but
cannot figure out how to set up the SSR implementation within
static.config.js
My understanding would be that it should work to do the following:
import flush from 'styled-jsx/server'
export default {    Document: class CustomHtml extends Component {
render () {
const { Html, Head, Body, children } = this.props
const styles = flush()
return (

Book Tower

{styles}

{children}

)
}
},
}
After trying this, it does not seem to work (flush returns an empty
array), and this produces a flash of unstyled content as a result
Any help would be appreciated 🙏
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/nozzle/react-static/issues/375, or mute the thread
https://github.com/notifications/unsubscribe-auth/AFUmCcOsapUTCQA4JqRJhzSwiztVKyT6ks5tUeExgaJpZM4SERKj
.

So I believe I have done it as you suggest, but still have a flash of unstyled content. I'll get a basic example demonstrating this tomorrow when I'm back at work, but here's what the static config renderToHtml looks like now:
renderToHtml: (render, Comp, meta) => {
    const html = render(<Comp />)
    const styles = flush()
    meta.styleTags = styles
    return html
  },

I believe there is a difference because the flush method does not take any parameters. Perhaps I should just use more specific classNames and use the styled components...I do feel like there should be a way to get this working though

There definitely is. Do you have your work so far in a repo I could take a
look at?
On Tue, Feb 13, 2018 at 3:50 PM Evan Ruby<EMAIL_ADDRESS>wrote:

So I believe I have done it as you suggest, but still have a flash of
unstyled content. I'll get a basic example demonstrating this tomorrow when
I'm back at work, but here's what the static config renderToHtml looks like
now:
renderToHtml: (render, Comp, meta) => {
const html = render()
const styles = flush()    meta.styleTags = styles
return html
},
I believe there is a difference because the flush method does not take any
parameters. Perhaps I should just use more specific classNames and use the
styled components...I do feel like there should be a way to get this
working though
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/nozzle/react-static/issues/375#issuecomment-365432466,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AFUmCZxgKkv9L0FFOxBiGA3_cSB-QOztks5tUhG9gaJpZM4SERKj
.

Browsers tested in: Safari 10.1.2, and Chrome 63.0.3239.84


add an option to save and load the processed grid

should add a save button to store, and a load button to load grids without repeatedly processing them.

Update: We successfully got the passthrough approach working.  The "round-tripping" from the 2D numpy flux array, back into a PHOENIXGrid object took 7 seconds.  The implementation is incomplete (lacking metadata still), but assuming that small change takes over order 0 seconds, then the hypothetical best speedup we could achieve is:
1 second + 7 second = 8 seconds.
55/8 = $7\times$
So that's a significant speedup.  However, it now causes a bloating of the disk: you are storing both the original files and a possibly ~5 GB file depending on your grid volume and wavelength range of interest.  So there's a tradeoff in time spent reading in, and disk space, and the mental overhead of remembering which "mini grids" or "grid sub-sections" you have saved and where.  Some of that mental overhead can be alleviated with clever caching (e.g. memoization) on the gollum-side, but there are still limitations and opportunities for that code to break...  More to be considered

The collection of FITS files for zero metallicity is 5.29 GB
The numpy binary of just the 2D flux array stores as 1.78 GB (but is missing some minor metadata...)
So we could hypothetically compressed the FITS files by something like $3\times$.  So 120 GB of PHOENIX would "only" be about 40 GB of a numpy save file.

@SujayShankarUT I think the speedup and data compression gains will be much greater for the Sonora Grid.  Currently the Sonora grid is stored as text files (not fits), and each file also stores the same wavelength coordinate.  The whole metallicity grid (excluding C/O ratio) is only 11 GB of text files.  So I think we could get it down to a single few GB binary.


[engine] 32-bit engine build is defaulting to build glfw (x11 dep)

Yesterday 32-bit arm engine builds started failing
../../third_party/glfw/src/monitor.c -o obj/third_party/glfw/src/glfw.monitor.o
| In file included from ../../third_party/glfw/src/monitor.c:28:
| In file included from ../../third_party/glfw/src/internal.h:169:
| ../../third_party/glfw/src/x11_platform.h:36:10: fatal error: 'X11/Xlib.h' file not found
| #include <X11/Xlib.h>
|          ^~~~~~~~~~~~
| 1 error generated.

Master
Looks like glfw client has been enabled by default.  This is the only scenario that does this.  It should default to not building glfw client. X11 is not always available nor desirable.
Complete build log available here:
https://github.com/meta-flutter/meta-flutter/runs/4613236435?check_suite_focus=true

Labeling it for further input from the team.
/cc @stuartmorgan

This isn't coming from the GLFW Linux embedding, it's the engine example.

Someone checked something in two days ago that affected this.  I run nightly builds and it looks like the glfw client (example) started getting built by default.  This shouldn't be the case.

Presumably it was https://github.com/flutter/engine/pull/30442

Yep.
@chinmaygarde this should not build by default.  It's dependent on X11 even though glfw can be built for others.  Also glfw sucks for embedded Linux as it requires lots of rework...

This is now blocking all builds - meta-flutter, AGL, and Toyota internal builds.  X11 cannot be a dependency for Linux builds.
@csells
@cmc5788

Any glfw/x11 dependency should be behind --no-build-glfw-shell

Stuart is right. The example GLFW exanoke embedder (not the one in the shell) was not being built earlier at all. The linked patch started building it under the assumption that linux hosts will be able to build the GLFW dependency. We need to be able to distinguish between the linux hosts that can build the example and those that can't. The GLFW shell is not the same as the examples however. I can add another gn flag (say --build-embedder-examples) that can be toggled. @jwinarske: Would that work? You would have to say --no-build-embedder-examples.
In the meantime, I'll stop building the the example so you are unblocked.

@chinmaygarde Whatever we use to control it, the x11 dependency has to be disabled by default, opposed to enabled.  Otherwise it's broken until fixed.  If we use --build-embedder-examples then it should default to false.

@chinmaygarde is this issue going to roll to beta channel, or can that be prevented?

@chinmaygarde -- I think the issue is that the commit that made x11 a dep for all Linux builds has already rolled to beta. A flag that disables it can't be used until that flag also rolls to beta. As @jwinarske mentioned, x11 deps are breaking for our build, so in the interim between this behavior being introduced and this flag rolling to beta, we have no solution.
I'd tend to agree that x11 deps being introduced to Linux default build is a breaking change and should be cherrypicked off beta as the default behavior, but if not, we'd at least need the flag available on beta as a cherrypick hotfix to unbrick our builds.
Sorry for the urgency. We'll investigate adding a customer test to guard against this kind of regression in the future. But for now this is a big problem for us.

@jwinarske @cmc5788  https://github.com/flutter/engine/pull/30442 is on beta channel. https://github.com/flutter/engine/pull/30917 may not be ideal, but if it is sufficient to unblock you, we can get it cherry-picked to beta. I believe the next hotfix release will be next week.

@zanderso @chinmaygarde
The "proposed/merged" fix is not acceptable.  It defaults to building GLFW.  If GLFW had flags to determine backend then it would be usable, but GLFW is hardcoded to X11.  The standard backends for embedded Linux are:

Wayland (commercial)
DRM/KMS (commercial)
X11/XCB (mostly non-commercial, desktop compatibility, legacy, hobby)

Because the build enables GLFW by default, we would need to track when we could use the flag verses not.  Adding a "unknown" flag to flutter/tools/gn causes it to fail, opposed to be ignored.  So everything downstream that does not have X11 is broken.  The proper logic to unblock downstream is to disable the default build of a hardcoded (X11) GLFW.  This line should default to false:  https://github.com/chinmaygarde/flutter_engine/blob/02873f210a09083146647647b2df3b81afe58864/examples/examples.gni#L8
AGL reported this morning their Flutter builds are officially broken.
We need this resolved ASAP, as well as a hot fix into beta.  I reported this issue 29 days ago, and I was a week late on reporting it.
@csells @cmc5788

@jwinarske I'm very sorry for the trouble, but I'd like to understand better why the flag added by https://github.com/flutter/engine/pull/30917 won't work for you. Are you using/building several different versions/channels of Flutter? If so, which ones and for what purposes?
https://github.com/flutter/engine/pull/30946

@zanderso From master to beta, the build fails.  For any channel that does not support the new flag, the build fails if the flag is set.  Setting up CI to track if this commit is present so we know when we can add the flag is not acceptable.  The flag that enables building GLFW needs to be disabled by default in order to unblock downstream builds.

@jwinarske IIUC, if we cherry-pick https://github.com/flutter/engine/pull/30917 to beta, then the flag will be consistently present between master and beta. Sorry if my question above was unclear, but what I'd like to learn is whether there's anything about your setup that means that even if the flag is on both master and beta, you'll still be blocked.

@zanderso -- thank you for following up on this! Let me know if the following explanation makes a bit more sense;
The primary concern is that adding a flag to opt out of x11 once hot-fixed is not super practical for us since we have a number of downstream customers (such as AGL) relying on our Flutter builds that are not directly consuming a source we can adjust in a single place.
It's not a matter of adding this flag in one place; we have to advise a number of downstream customers in cases where we can't just directly step in and apply patches, in partner codebases and not just internally.
For that reason we'd really strongly prefer to see the default behavior on all channels hot-fixed to the non-broken builds as default, as opposed to having to opt into the corrected behavior and then advise to propagate flag to all downstream customer builds, even if it requires an additional commit (one-line change) now to change the default before hot-fixing. We'd prefer to see that commit if it enables the more ideal behavior for Linux customers instead of piling on.

@cmc5788 That makes sense. Thanks for the explanation. It would be helpful if you can confirm that applying https://github.com/flutter/engine/pull/30917 and then https://github.com/flutter/engine/pull/30946 to the current beta channel resolves the issue.

@zanderso -- It looks correct; when it's on master we'll be able to run a canary build confirming.

@cmc5788 Both are landed on master.

Thanks! It looks good and we'll report back on on canary build status. Thanks again for your responsiveness on all of this.

@zanderso canary build on master looks good.
https://github.com/meta-flutter/meta-flutter/runs/4888483652

@jwinarske great news! if that can be cherrypicked to channels at some point we should be in good shape?

@cmc5788 Yes, now we just need the cherry picking for channels affected.

FYI @iskakaushik re: customer test discussion.
@godofredoc @devoncarew @itsjustkevin for cherry-pick this needs https://github.com/flutter/engine/commit/db06032d0801c9e0dcd536fbed9ecfaff78e321c followed by https://github.com/flutter/engine/commit/0ae4613c52dd18d5f1a0c3cb0746b5af9f131ad5


Typescript support?

Would be grateful for typescript support. I get the following error when importing this in a typescript component:
TS7016: Could not find a declaration file for module  react-internet-meter .
/Users/carl/Source/crescendo/node_modules/react-internet-meter/dist/index.js
implicitly has an  any  type.
Try  npm i --save-dev @types/react-internet-meter  if it exists or add a new declaration (.d.ts) file containing  declare module 'react-internet-meter';

Hi @cayblood
Sure, I will add it by this weekend 🙏🏻


Form steps renamed

This change concerns Graphql mutations, the form step names have been renamed to be more meaningful:

Company profile:

STEP_NAME: changed from Step1 to: BaseData
VARIABLE_NAME: changed from step_1 to: baseData
STEP_NAME: changed from Step2 to: Relations
VARIABLE_NAME: changed from step_2 to: relations
STEP_NAME: changed from Step3 to: Advantages
VARIABLE_NAME: changed from step_3 to: advantages
STEP_NAME: changed from Step4 to: Values
VARIABLE_NAME: changed from step_4 to: values
Variables are applied on the following template to give the idea:
    mutation CompanyProfileMutation(${VARIABLE_NAME}: CompanyProfileInput{STEP_NAME}!) {
        companyProfile{STEP_NAME} ( {VARIABLE_NAME}: ${VARIABLE_NAME} ) {
            success,
            errors
        }
    }

For example the following is the new mutation for the former Step1:
    mutation CompanyProfileMutation($baseData: CompanyProfileInputBaseData!) {
        companyProfileBaseData (baseData: $baseData) {
            success,
            errors
        }
    }

Job Posting:

STEP_NAME: changed from Step1 to: BaseData
VARIABLE_NAME: changed from step_1 to: baseData
STEP_NAME: changed from Step2 to: Requirements
VARIABLE_NAME: changed from step_2 to: requirements
STEP_NAME: changed from Step3 to: Allocation
VARIABLE_NAME: changed from step_3 to: allocation

Student:

STEP_NAME: changed from Step1 to: BaseData
VARIABLE_NAME: changed from step_1 to: baseData
STEP_NAME: changed from Step2 to: Employment
VARIABLE_NAME: changed from step_2 to: employment
STEP_NAME: changed from Step3 to: Character
VARIABLE_NAME: changed from step_3 to: character
STEP_NAME: changed from Step4 to: Abilities
VARIABLE_NAME: changed from step_4 to: abilities
STEP_NAME: changed from Step5 to: SpecificData
VARIABLE_NAME: changed from step_5 to: specificData
STEP_NAME: changed from Step6 to: Condition
VARIABLE_NAME: changed from step_6 to: condition

University:

STEP_NAME: changed from Step1 to: BaseData
VARIABLE_NAME: changed from step_1 to: baseData
STEP_NAME: changed from Step2 to: SpecificData
VARIABLE_NAME: changed from step_2 to: specificData
STEP_NAME: changed from Step3 to: Relations
VARIABLE_NAME: changed from step_3 to: relations
STEP_NAME: changed from Step4 to: Values
VARIABLE_NAME: changed from step_4 to: values
Outdated: mutations now comply to graphql relay specification

Outdated: mutations now comply to graphql relay specification


Add eth_transactionBy impls

Describe the feature
Implement the following:

[ ] eth_getTransactionByHash
[ ] eth_getTransactionByBlockHashAndIndex
[ ] eth_getTransactionByBlockNumberAndIndex

Additional context
Related tracking issue: #1225
I can start working on these.

Thanks
Afaik this is currently blocked until we've figured out how to go from transaction to its block (we need data from the block for the rpc response)
Cc @rakita

In reth, transactions are indexed by global counter TxNumber.
eth_getTransactionByBlockNumberAndIndex
Are possible to be done with BlockBodies table that contains start_tx of that global counter and number of transaction in this block.
eth_getTransactionByBlockHashAndIndex
Block number can be get from HeaderNumbers and it becomes same story as in ByBlockNumber
eth_getTransactionByHash
We have table for it TxHashNumber to get tx global index and tx can be found in Transactions table