Add APKBUILD files for Alpine Linux distribution

APKBUILD files and basic config files to build .apk for Alpine Linux.

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.0 out of 2 committers have signed the CLA.:x: leilei3:x: sgubleilei3 seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.0 out of 2 committers have signed the CLA.:x: leilei3:x: sgubleilei3 seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

FYI there is a Alpine Linux package for Tengien - https://pkgs.alpinelinux.org/packages?name=tengine&branch=edge


Removing Parallelism setting per job

Issue #, if available:
Description of changes:
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

@nidsharm Please rebase the code. Something seems off looking at the number of commits.


Added Cake task.

Hello,
I'm not sure if you accept pull requests for new tools, but here is a new task for running Cake scripts.
http://cakebuild.net
https://github.com/cake-build/cake
Testing the task
1. Create build script
Create a build.cake file in your repository.
var target = Argument("target", "Default");

Task("Build")
  .Does(() =>
{
  MSBuild("./src/MyProject");
});

Task("Default")
  .IsDependentOn("Build");

RunTarget(target);

2. Add build step

Hi @patriksvensson, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!

In order for us to evaluate and accept your PR, we ask that you sign a contribution license agreement. It's all electronic and will take just minutes. I promise there's no faxing. https://cla.microsoft.com.

TTYL, MSBOT;

@patriksvensson, Thanks for signing the contribution license agreement so quickly! Actual humans will now validate the agreement and then evaluate the PR.
Thanks, MSBOT;

Thanks for writing the cake task!  This repro contains tasks that end up in the box in VSO.  We have an a new extensions gallery where users can contribute tasks and the community can find on a gallery.  Follow up with me (bryanmac) and chrispat both at microsoft dot com

@bryanmacfarlane Done

@bryanmacfarlane sounds interesting, when will info about this extension gallery be public?
You should update README.md/Contributing with this info, best would be if you added an CONTRIBUTING.md as those are displayed on GitHub when you create a pull request or issue.
Would be excellent if the extension gallery offers a seamless experience, have 1500+ projects using Cake Build scripts at different customers would have been nice to easily use the vNext build system for this.

I will update contributing when it's in public preview.  Following up offline with you ...

@bryanmacfarlane ok, thanks for the quick reply! :+1:


Am find hard in installing this project

Hello guys,
Am new to larvel and I am also new in using the cmd in installing stuffs. I tried to follow the installation procedure provided https://github.com/balping/ticketit-app but still get it right. Any web installation script?

You'll need composer to install Laravel, more can be found here: https://getcomposer.org/doc/00-intro.md#installation-windows

@asopiah I haven't tested my installation script on windows, could you you please report back if you've succeeded?

@Quintenps I have installed composer but still not working.
@balping I haven't succeeded. A web installation script will better for windows guys like me.

Any new error messages?

Hi @balping Same original error.

Then you didnt succeed to install composer

I suppose you have succeeded. If not, feel free to reopen


Run Private actions in Public Workflows

Action starts another repos workflow in its repo space in github and polls for the completion.
This action provides the final status, conclusion, and workflow_id of the started workflow. It does not fail if the external workflow failed, it will provide the information in outputs instead so you can do what you need with them, whether that be to fail the workflow or gather logs, or whatever you need to do based on the results.
Added a workflow to test the starting of another workflow
Added a workflow to run the go unit tests of the docker action

Closing this in favor of using: https://github.com/convictional/trigger-workflow-and-wait


Remove all Tertiary tokens

### Tasks
- [ ] Remove tokens from Figma theme file
- [ ] Remove from Light mode Figma library
- [ ] Remove from Dark mode Figma library
- [ ] Remove from palette
- [ ] Remove from characteristic

The following tokens can be removed:

container-tertiary-borderColor
container-tertiary-background
container-tertiary-borderColor-disabled
container-tertiary-background-disabled
palette-neutral-tertiary-border
palette-neutral-tertiary-background
palette-neutral-tertiary-border-disabled
palette-neutral-tertiary-background-disabled
palette-neutral-tertiary-background-readonly

Need to make sure palette-neutral-tertiary-separator is left alone, as it's still in use. All other Tertiary tokens can be removed.

@bhoppers2008 light and dark mode libraries have been updated and published internally, they just need to be published to the community. The publish description is as follows:
Updated 11 Jul 2023
All container-tertiary tokens removed as they are no longer in use.

@bhoppers2008 light and dark mode libraries have been updated and published internally, they just need to be published to the community. The publish description is as follows:
Updated 11 Jul 2023 All container-tertiary tokens removed as they are no longer in use.

Done.

closing, captured in https://github.com/jpmorganchase/salt-ds/issues/2000


Add increment / decrement buttons to text boxes with number mask

Modify Number mask verify method to return false on empty string, so that the textbox always has a valid number in it (this is an explicit change in behavior and might not be the right solution)
Add Increment and Decrement buttons to Defaults

Styling and structure copied from Dropdown button

Add Increment and Decrement buttons to self.Frame when mask type is set to Number

Not sure if theres a better way to check than == "Number"
Buttons are visually inset, might be concerns with overflow of large numbers
The buttons being nested inside the textbox makes for... odd focus pulling? Not sure how to fix it in a reasonable way. Might just be a matter of not having the buttons inset and then resizing the container frame to shrink a bit and give space for the buttons.

Clean up buttons if they exist on destroy

TODO: Add up/down arrow key support - possibly behind flag, definitely requires ClearTextOnFocus to be false
https://user-images.githubusercontent.com/50600470/103394369-1fbfb600-4af6-11eb-846a-b622866b51a5.mov

Changes can be found in this commit:
ccaf2914328cbbbe13b02ce70f43b80598b491d7


move updated at/stargazers count to unsynced file, leave rest of the stuff in data.toml

added in f72147e56e9c3a8b654c15f5a09ccdf867b29119


Indicator not dismissing

Issue happens when:

Load a viewcontroller, query something in the background (e.g. Parse query.findObjectsInBackground)
In query.findObjectsInBackground callback (dismiss Progress)
Indicator still there

Note: Only occurs on first time FTIndicator is loaded. Hacked around issue by callign showprogress and then dismissprogress in AppDelegate before any views can be loaded
Happens when loading a new view controller. I believe the indicator hasn't had time to load before calling my dismiss, which causes the issue. Showing and dismissing progress occurs on main thread

I thinks maybe when query done call back, you should call dispatch_get_main_queue().

I tried that, still didn't work. Confirmed that showing/dismissing is on main queue. Its something about the initial initialization of the FTIndicator thats having issues

I tried the following methods, works fine. Just upload some code, try run the demo and click the + button on the up-left. Maybe let me see some of your code to help me understand more about this issue. Thanks.
`

(void)viewDidLoad {
[super viewDidLoad];
[FTProgressIndicator showProgressWithmessage:@"Something is happening..."];
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
  for (NSInteger i = 0; i < 1000; i++) {
      NSLog(@"print out %ld",i);
  }

  sleep(3);

  dispatch_async(dispatch_get_main_queue(), ^{
      [FTProgressIndicator dismiss];
  });

});

}
`

This is the code snippet where the problem is occurring. It only occurs the first time I see FTIndicator and only when I’m switching to or loading a new view controller. After that everything works fine. I can clear the indicator that won’t go away, by performing an action that shows the indicator again.
When I debug, the breakpoint hits dismissProgress callback before the indicator is actually shown.
private func fetchObjects(){
FTIndicator.showProgressWithmessage("")
query.findObjectsInBackground { (objects: [PFObject]?, error: Error?) in
FTIndicator.dismissProgress()

On Dec 7, 2016, at 6:51 PM, Liu Fengting<EMAIL_ADDRESS>wrote:
I tried the following methods, works fine. Just upload some code, try run the demo and click the + button on the up-left. Maybe let me see some of your code to help me understand more about this issue. Thanks.
`
(void)viewDidLoad {
[super viewDidLoad];
[FTProgressIndicator showProgressWithmessage:@"Something is happening..."];
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
for (NSInteger i = 0; i < 1000; i++) {
NSLog(@"print out %ld",i);
}
sleep(3);
dispatch_async(dispatch_get_main_queue(), ^{
[FTProgressIndicator dismiss];
});
});
}
`
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub https://github.com/liufengting/FTIndicator/issues/8#issuecomment-265639099, or mute the thread https://github.com/notifications/unsubscribe-auth/ABQm0UQFEcs-Npxy7DBvutlPMZqEp4kWks5rF3DJgaJpZM4LHWO9.

Make sure it is dispatch_async. other than that, I can find any other way to solves this.

I tried dispatch_async but issue still occurs

On Dec 7, 2016, at 7:09 PM, Liu Fengting<EMAIL_ADDRESS>wrote:
Make sure it is dispatch_async. other than that, I can find any other way to solves this.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub https://github.com/liufengting/FTIndicator/issues/8#issuecomment-265641526, or mute the thread https://github.com/notifications/unsubscribe-auth/ABQm0VUT-WXr8pngoWqWrT57ZmsAwTfSks5rF3UAgaJpZM4LHWO9.


test for large vectors persistence

Switch persistence storage to sqlite for the local mode

Fixes https://github.com/qdrant/qdrant-client/issues/166

We could just in case explicitly close the connection in __del__. (However it might not be necessary)

I think we might need to test local client not only with :memory:, but also with path=tmpdir in congruence tests in the future (to be more confident about it)

PR #169 contains the changes to my comments.


Is Stored Procedure Output parameter supported via FromSQL or ExecuteSqlCommand ?

Hi,
We are trying to execute SP which has only Output type parameter, But if we pass Parameter of type DB2Paramemter then we get below error:
Unhandled Exception: System.NotSupportedException: No mapping to a relational ty
pe can be found for the CLR type 'DB2Parameter'
and if we pass just int type parameter, we don't see\get value.
Is Stored Procedure Output parameter supported via FromSQL or ExecuteSqlCommand ?
Thanks,
Archana

It looks like you are using the DB2 provider which I think currently only supports RC1. If so, the ability to pass DbParameters to those APIs was added after RC1. You would need to wait for a version of the provider that supports the 1.0.0 release of EF Core.


Based on httpsoft/http-app

Need to adjust:

[ ] Repository
[ ] Entity
[ ] UseCase or Service
[ ] Tests
[ ] Gateways

Closes #1
Closes #2
Closes #3
Closes #4
Closes #18


github-46: Use ResourceError when returning errors

This commit uses the new ResourceError struct embedded in the status section of the DWS/nnf-sos resources. When returning an error, use the NewResourceError() call to return a ResourceError and fill it in with the correct information. This allows the end user and WLM to make informed decisions about what to do when there's an error.

Nice work!


[BottomNavigation] onClick does not fire if tapped while scrolling

Closes #22368.
The onTouchStart and onTouchEnd events are now also used to decide whether or not a given BottomNavigationAction is clicked.
As per @oliviertassinari's request, a demo has been added showcasing how to fix BottomNavigation to the bottom of the page.

[x] I have followed (at least) the PR section of the contributing guide.

@oliviertassinari I'm getting the Touch is not defined error a lot in the non-chrome browser tests. I can tell from MDN that TouchEvent (and therefore also Touch) is not supported in IE and Safari. Do you have an idea for how to solve this? If touch events are not supported anyway in those browsers, i'm guessing that we are not interested in testing the touch functionality in those browsers anyway?

I guess i could make a check, shot circuiting the tests to completion if Touch is not defined. It's a little bit inelegant though. I don't think i know enough about your test setup to make an educated decision.

It's what we do in https://github.com/mui-org/material-ui/blob/f37992f328fa3c2d5d08ad8296801e7ec1d29475/packages/material-ui/src/Slider/Slider.test.js#L28-L32

It's what we do in
https://github.com/mui-org/material-ui/blob/f37992f328fa3c2d5d08ad8296801e7ec1d29475/packages/material-ui/src/Slider/Slider.test.js#L28-L32
we could turn it into a skip(), could be cleaner.

Agreed. I tried using a skip, but i ran into this problem: https://github.com/mochajs/mocha/issues/2819
I will use a return like in some of the other tests, instead.

Should be all good now @oliviertassinari :)

@EliasJorgensen It's a great first pull request on Material-UI 👌🏻. Thank you for working on it!


feat: Add useReducer

This Hook is inspired by Reacts buildin useReducer Hook. Its an easy way to centralize logic and use it in sub components without needing reference to the function.
The Name Reducer is a little misleading because its not a pure function to update state. Its mutating the reactive vue variable.
Maybe the name useActionState would be better? What do you think about this in general?
I had some issue with ts

Thanks for the PR!
I am personally not a big fan of reducers as they make the types harder. But I am happy to have this included, as long as we can have a proper way to either auto infer the types or let users able to define the types.
I am fine with both useReducer and useActionState. If we go with useReducer, please add a line in docs addressing the difference.
BTW, can you run the linter to fix the style error? Thanks :)

Ok, ya linting is no problem.
TS I need some days to research


Blob Input Binding doesn't receive the blob.

Blob Input Binding doesn't receive the blob.
I followed the tutorial for setting up a BlobTrigger, it worked as expected. After switching the trigger to HTTP instead of Blob, and making the blob into an input binding, the myblob object in my python script does not have the data I expect it to.
Investigative information
Please provide the following:

Core Tools version: 2.7.1846

Repro steps
Setup a python 3 azure function with this function.json and code.
function.json
{
  "scriptFile": "__init__.py",
  "bindings": [
    {
      "authLevel": "anonymous",
      "type": "httpTrigger",
      "direction": "in",
      "name": "req",
      "methods": [
        "post"
      ]
    },
    {
      "name": "myblob",
      "type": "blob",
      "direction": "in",
      "path": "tinker/function.json",
      "connection": "AzureWebJobsStorage"
    }
  ]
}

init.py
import logging
import azure.functions as func

def main(req: func.HttpRequest, myblob: func.InputStream):
    logging.info(f"Python blob trigger function processed blob \n"
                 f"Name: {myblob.name}\n"
                 f"Blob Size: {myblob.length} bytes")

Reproduction Steps

Upload tinker/function.json in the AzureWebJobsStorage storage account, with some data. This is just a test file.
Run the azure function locally using the Azure func runtime.

Expected behavior
There will be accurate information logged about function.json.
[11/14/2019 19:23:38] Python blob trigger function processed blob
Name: tinker/function.json
Blob Size: 355 bytes

Actual behavior
The myblob binding doesn't have any contents.
[11/13/2019 20:39:49] Python blob trigger function processed blob
Name: None
Blob Size: None bytes

Hi @terminalstderr, unfortunately, the metadata of the blob binding (e.g. name, length) is not provided by the function host, but you can still access the raw data in blob binding via myblob.read().
To access the full metadata of a blob, we recommend using Azure Storage SDK.

Okay. I do find it confusing that there a difference in the metadata of the blob binding (e.g. name, length) between Blob Trigger vs the Blob Input Binding.
I have already moved to using the Azure Storage SDK 😁👍


Add detailed multiplayer features, add settings to control metadata import

https://github.com/sharkusmanch/playnite-pcgamingwiki-metadata-provider/issues/13


Added columns and column support

Now each column component inside columns is shown correctly. Previously it was put at the bottom thus breaking the layout.
#47

Hey! Thanks for the PR!
I'm having a hard time reproducing this on AA 2.0 (the original ticket was on AA 2.0 alpha).
What's the best way for me to reproduce this?

👍

@marcomd @pattersonc can either of you confirm whether this is still reproducible / needs to be merged?

No response. Closing the PR.


Link to projects using standard has changed

on the index page
To get a better idea, take a look at a sample file written in JavaScript Standard Style, or check out some of the repositories that use standard.

https://github.com/feross/standard-packages/blob/master/standard.json
should point to
https://github.com/feross/standard-packages/blob/master/all.json or .test.json from the looks of it
https://github.com/feross/standard-www/blob/gh-pages/index.html#L53

Good catch!


py35 and py36 fail in pipes

py27.exe is working fine for me, but the Python 3 version are failing when I run them with popen2.
The relevant part of the error is:
Traceback (most recent call last):
  File "C:\projects\pyexe\pyexe.py", line 1176, in <module>
  File "C:\Python36\lib\os.py", line 1017, in fdopen
ValueError: Must have exactly one of read or write mode
[13316] Failed to execute script pyexe

I don't have a minimum working example yet but it involves talking to py.exe with a pipe.  My tests using system() in Octave work fine.  But when I open it with popen2, I get this error message.
I can dig deeper later if needed, but thought I'd report first in case its an easy fix.

FWIW, this comment shows how to use socat to similar the pipes thing.  No idea if this is do-able on Windows.

This sounds similar to the change in Python 2 to 3 in how unbuffered stdin/stdout access is performed.  In Python2, specifying a buffer size of 0 works to make a file point unbuffered, but using 0 in Python 3 shows a similar error (whereas using a buffer size of 1 works successfully).  Does passing an explicit bufsize of a positive number to popen2 work?
Also, I'm having trouble reproducing this, so a minimal example (or even a not-so-minimal example) would help.

Ok, not so minimal but here goes:

Install Octave-4.2.2.  Specifically, I think I used octave-4.2.2-w64-installer.exe from https://ftp.gnu.org/gnu/octave/windows/
Run Octave (GUI or cmd line)
"cd where/ever/pyexe/is/
type the following:

[fin, fout, pid] = popen2('py36_v14dev.exe', '-i')

The output for me is:
fin =  4
fout =  3
pid =  14592
>>
>>
>>
>> Traceback (most recent call last):
  File "C:\projects\pyexe\pyexe.py", line 1176, in <module>
  File "C:\Python36\lib\os.py", line 1017, in fdopen
ValueError: Must have exactly one of read or write mode
[8912] Failed to execute script pyexe

(I pressed enter a couple times which made the ">>" prompts but this wasn't necessary.)
I don't know anything about system calls on Windows so I'm not how hard it is to test with a real popen2 (in C).  Or maybe we could try reproducing with Python2's deprecated popen2 command...

Does passing an explicit bufsize of a positive number to popen2 work?

Unfortunately, I don't think I have direct control of that in Octave.

I can reproduce with Octave (but not with python 2's popen2).  So far I've managed to change the error pyexe outputs, but not avoid it.  I can get a similar error with something like [in, out, pid] = popen2("\\python36\\python", {"\\temp\\pyexe.py", "-i"});, where pyexe.py is an output artifact from the appveyor build (with some fussing).  I'm hoping if I can figure out how to workaround that, it will apply to the built exe.

In case it matters, Its possible Octave uses its own popen2 implementation on Windows (rather than a POSIX system call).  This stuff is in oct-syscalls.cc and wrappers/octave-popen2.c
None of this is urgent from my point of view: I can simply ship py27.exe.


[1365] Fix expected translated cancel link text

Context
https://trello.com/c/8nO4xkX2/1365-fix-inconsistant-use-of-i18n
https://github.com/DFE-Digital/register-trainee-teachers/pull/710
Fix due to the above PR.
Changes proposed in this pull request

Change en.yml so "cancel" translates to "Cancel" and not "Cancel and return to record"
Changed all pages that expected "Cancel and return to record" text to use key: "views.forms.common.cancel_and_return_to_record"

Guidance to review

 Fix inconsistant use of I18n


Use event channel

Instead of polling.
And select on both the event and the callback channels.
Maybe also on a third refresh channel?
(One goal is to eliminate the need for a refresh rate in most cases, by sending a refresh signal instead.)

Started using an event channel in the termion backend.
Next step is to push this to the Backend trait.


Add text translate util

Description

Add a translate util that replaces any keys in {{key}} format within a string with defined values
Use the util in ExportedReportPage with a LaunchDarkly flag
Remove old LD flags in tests

Related ticket(s)

CMDCT-3677

How to test

Create a WP and SAR.
Verify the headings are as expected.
Unit tests also provide coverage.

Notes

If we like this pattern, there are several other components where  we can use the util.

Pre-review checklist

[ ] I have added thorough tests, if necessary
[ ] I have updated relevant documentation, if necessary
[ ] I have performed a self-review of my code
[ ] I have manually tested this PR in the deployed cloud environment

Changes look good to me. I'm curious to see the other use cases you have in mind. Is the advantage just of defining the desired string in a verbiage or json file rather than in the components?

Yes, defining the strings in verbiage files makes it easier to find them. Plus, instead of using string fragments where it isn't obvious they're being combined later, it's easier to see the complete string.


CAMEL-20199: camel-jetty - Propagate exception

Related to https://issues.apache.org/jira/browse/CAMEL-20199
Motivation
The PR https://github.com/apache/camel/pull/16134 causes some regressions in the pipeline https://ci-builds.apache.org/job/Camel/job/Camel Core (Build and test)/job/main/512/
Modifications:

Propagate properly the exceptions for backward compatibility reasons

/component-test jetty

/component-test jetty-common jetty

The component test error seems to be a false positive, as according to the stack trace, it still uses the old code for some reason. If I launch the tests locally, the tests pass


Generate password with both lower and upper case guaranteed

Is your feature request related to a problem? Please describe.
The password generator doesn't allow generating passwords with both lower and upper case in a consistent way.
Right now, the decision to have an upper or lower case character is defined by this.faker.bool().bool()
This will regularly generate an incorrect password, certainly if it's short.
Describe the solution you'd like
I want to be able to consistently generate a password with at least:

a given minimum & maximum length
1 lower case
1 upper case
1 special
1 number

@roelmang You can take a look at faker.internet().password().
There is a method:  public String password(int minimumLength, int maximumLength, boolean includeUppercase, boolean includeSpecial, boolean includeDigit)

@panilya That's the method I'm reporting to not do what I want it to do. Please re-read my feature request.

@roelmang what do you expect to happen when the password has length 3?

Never thought I had to prove what I said, while you can just read it from the source code:
Given code:
`
import net.datafaker.Faker;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
public class ShowBodiam {
static Faker FAKER = Faker.instance();

public static void main(String[] args) {
    int count = 0;
    List<String> withoutLowerCase = new ArrayList<>();
    List<String> withLowerCase = new ArrayList<>();
    while (count++ < 1000000) {
        String password = generatePassword();
        if (containsLowerCase(password)) {
            withLowerCase.add(password);
        } else {
            withoutLowerCase.add(password);
        }
    }
    System.out.println("with lower case: " + withLowerCase.size());
    System.out.println("without lower case: " + withoutLowerCase.size());
    withoutLowerCase.stream().limit(10).forEach(System.out::println);
}

public static String generatePassword() {
    return FAKER.lorem().characters(6, 10, true, true, true);
}

public static boolean containsLowerCase(String pw) {
    return !Objects.equals(pw, pw.toUpperCase());
}

}
`
Output:
with lower case: 804817
without lower case: 195183
D1NE3!
*2OMEN
47^%*7M
73%35Q&K
XC5^WM
FOK%350G
135ED$2V
W307%4
N9YE@5@KLI
JB@#1R

I agree this generation is not the best way.
Currently it does not provide guarantee of having lowercase in output guaranteeing only upper, digit and special.
At the same time there are other issues:
It does special symbols are hardcoded without coverage all of them or possibility to exclude some of them
No way to support other symbols than from English alphabet.
So I would create a task to support fix that behavior and it should also fix an issue mentioned here

the decision to have an upper or lower case character is defined by this.faker.bool().bool()

This is incorrect. If you call the method with a "true" for uppercase, the uppercase is always included, since that's happening a few lines above. You can see this in my output too. The lower case works differently indeed, but happy to accept any PR for this to force the creation of lowercase characters.

@bodiam , @roelmang  you might be interested in having a look at https://github.com/datafaker-net/datafaker/pull/251


An experiment log

Describe the solution you'd like
It could be nice to be able to log any information that is processed during an experiment (this is somewhat an extension to #94 )

This is related to the #94, where i think the same feature is being implemented now.


fix(ui): various ui fixes

This addresses a few small bugs that I noticed when browsing the site, most of them only noticeable when using dark mode:

There's a small gap between the date badge and the card itself that's only noticeable in dark mode

I noticed that the theme toggle uses an attribute on the body tag to determine if dark mode is enabled or not and I remembered that that's not the way TailwindCSS detects dark mode by default. A nice side-effect of fixing that was that the navigation bar's colours now change alongside the theme.
Using dark mode, cards and buttons throughout the site don't use borders, and the cards in the "Recent Meetups" section use a pretty thick border that's not using the brand colours. I've adjusted that to use a tone of the brand colour (please let me know if that works for you, I can change that to something more suitable/appropriate).
The text also got nearly invisible when hovering over the card there when using dark mode. Changed that to using the brand colour.
Before:

After:

The text for the venue and number of attendees seemed off-center on the y-axis. It seems like that's in some places there was some padding added on top; I believe that there must have been a reason for it but checking on the mobile & tablet & desktop viewport sizes, I can't seem to find anything that breaks when removing it. There was also a fixed line height for the text, resulting in the bottom portion of letters like g or p to be cut off. Removing that fixed line height fixes this, but also makes the card slightly taller on mobile.
Before:

After:

The text for the "Upcoming" badge seems like a tight fit, adding some extra x-axis padding makes it look more natural.

In the sponsors section on the home page, added an underline to the link for the email since it wasn't clear if the "View all sponsors" button leads to a way to contact you or if the text itself is a link.
For cards in the "Recent Meetups" section, the date badge doesn't have any padding on the mobile viewport size. This looks good on the white theme, but looks off in dark mode. The minimum padding I could add to make it fit the overall apperance of the website website was .35rem since adding more padding there makes the card taller overall.
Before:

After:

thanks for the PR @danshilm. I'm fixing the deployment

Deploy fixed! It was due to a field being wrongly set in the CMS. Unrelated to your PR.
Thanks for taking a look and sending the ui fixes, i checked and they all look great! merging


errant linebreak in + Add button for elsewhere

This isn't intentional, is it?

Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.

Not reproducible now (checked in both chrome and ff):


Failed to spawn command phpmd. Make sure phpmd is installed and on your PATH

Any time I open a PHP file I get multiple occurrences of this error:
Failed to spawn command phpmd. Make sure phpmd is installed and on your PATH

Here's what I'm running:
OSX 10.9.5
Atom 0.184.0 (0.184.0)
linter 0.12.0
linter-phpmd 0.0.10

Do you have phpmd installed? Make sure to follow the installation section of the linter-phpmd readme: https://atom.io/packages/linter-phpmd

Ah, you're right--my fault for not reading the installation notes closely enough. I skimmed it, but made the cursory assumption that wherever it said phpmd, it meant linter-phpmd. Sorry. :D


[CON-689] issue 1308 Elasticsearch 5 Support Will Break External Solr

Signed-off-by: Lance Finfrock<EMAIL_ADDRESS>https://github.com/chef/chef-server/issues/1308

Thank you so much for adding tests here around external services. This is awesome!


Add a few analytics improvements

Add scale column to full statistics dataframe, and add second dataframe output computing per-image statistics.

Coverage increased (+0.04%) to 99.315% when pulling c22b6e3ed880852abd7d7c046b9a6c45b27feb41 on analytics into f8cd79972d66c645af35560135bbccc599e57a06 on master.


Streamline CI workflow

We can combine the existing CI workflow files cron-staging.yml and main.yml with conditional keywords. See discussion here: https://github.com/Qiskit/qiskit-experiments/pull/1062#pullrequestreview-1320470737
As discussed in #1066, we can probably also remove push as a test condition. Another minor improvement would be to rename the dev docs build action in docs_dev.yml to something other than "Docs Publish", since that name is already taken by docs.yml (already done).

@AbdullahKazi500 Yes, that's right, we'd like to merge the two files together into a single CI file with minimal repeated code. I'll assign this to you, thanks.


Fix requirements and add gitignore

This PR fixes the requirements file, for the dbus package.
Also adds a default gitignore for python retrieved from gitignore.io

Rebased master to fix conflicts

Thank you so much. As this is also my first project in GitHub, I'm trying to figure things out. I merged it finally

@mhtghn no worries, i also went through this once, everyone does.
I'll be creating some other PRs soonish, your idea is pretty cool.


Fixed flaky test testValidateJsonTimestamp

Summary
NIFI-00000
The use of inferred schema combined with non-inferred schema was causing flaky test behavior.
The setting of SchemaAccessUtils.SCHEMA_ACCESS_STRATEGY to SchemaInferenceUtil.INFER_SCHEMA.getValue() while ValidateRecord.SCHEMA_ACCESS_STRATEGY is set to SchemaAccessUtils.SCHEMA_TEXT_PROPERTY caused tests to fail or pass unpredictably in the method: testValidateJsonTimestamp.
Changing SchemaAccessUtils.SCHEMA_ACCESS_STRATEGY in the // Test with an Inferred Schema. section resolved the flakiness, but does not test for inferred schema, defeating the point of that test.
The solution was to remove ValidateRecord.SCHEMA_ACCESS_STRATEGY. This causes all tests to pass and uses the intended inferred schema.
Tracking
Please complete the following tracking steps prior to pull request creation.
Issue Tracking

[ ] Apache NiFi Jira issue created

Pull Request Tracking

[ ] Pull Request title starts with Apache NiFi Jira issue number, such as NIFI-00000
[ ] Pull Request commit message starts with Apache NiFi Jira issue number, as such NIFI-00000

Pull Request Formatting

[ ] Pull Request based on current revision of the main branch
[ ] Pull Request refers to a feature branch with one commit containing changes

Verification
Ran NonDex 10 times. Prior to the fix, the test was flaky, and would pass or fail randomly.
After the fix, the test always passes.
mvn -pl nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors \
    edu.illinois:nondex-maven-plugin:2.1.7:nondex \
    -Dtest=org.apache.nifi.processors.standard.TestValidateRecord#testValidateJsonTimestamp -DnondexRuns=10

Build

[ ] Build completed using mvn clean install -P contrib-check

[ ] JDK 21

Licensing

[ ] New dependencies are compatible with the Apache License 2.0 according to the License Policy
[ ] New dependencies are documented in applicable LICENSE and NOTICE files

Documentation

[ ] Documentation formatting appears as expected in rendered files

Thanks for the contribution @tydaljames. As Chris mentioned, please resolve the merge conflicts also create a Jira issue as indicated in the pull request checklist. Feel free to resubmit the pull request after going through those steps.


Move sounddevice.py to src/

I'm pretty indifferent to these kinds of aesthetic changes but adding a src folder feels counter intuitive. Python packages pretty much always have the main source file in the respository, or in a subfolder that has the same name as the package. A src/ folder reminds me more of C projects.

Some time ago I would have had a similar opinion, but then I was enlightened by https://blog.ionelmc.ro/2014/05/25/python-packaging/ which was recommended by https://docs.pytest.org/en/latest/goodpractices.html.
I'm not repeating the arguments here, but I think they make a pretty good case for using src/.
And it would definitely not be a purely aesthetic change.
Of course there are also other opinions, e.g. http://as.ynchrono.us/2007/12/filesystem-structure-of-python-project_21.html, which says:

Don't [...] put your source in a directory called src or lib. This makes it hard to run without installing.

This is not quite true (see the comments: http://as.ynchrono.us/2007/12/filesystem-structure-of-python-project_21.html?showComment=1324403776492&m=1#c8055206121684953974
... where it turns out that it is actually quite easy and the argument reduces to "it's still pointless extra work")
It is the point of the abovementioned good practices that we shouldn't run stuff without installing
When using CFFI out-of-line mode, this is a moot point, because we have to install the module anyway.

And the page http://docs.python-guide.org/en/latest/writing/structure/ simply says:

Your library does not belong in an ambiguous src or python subdirectory.

... which isn't an argument at all.
So I'm definitely leaning towards moving to src/, but I might have missed something. Are there other arguments?

hah, thorough as always @mgeier . I can see now where using a src directory would be helpful, even just to help avoid mistakes that happen when the python module is at the root directory. I will probably start doing this myself. Thanks for the lesson!


chore : GH-31 Add TVShows feature

Add TV shows and settings screen

Codecov Report
Attention: 108 lines in your changes are missing coverage. Please review.

Comparison is base (9384f40) 75.99% compared to head (2b0d72c) 72.92%.

Files
Patch %
Lines

...ryokafor/core/data/repository/TVShowsRepository.kt
0.00%
39 Missing :warning:

...e/jerryokafor/core/data/repository/LocalStorage.kt
0.00%
27 Missing :warning:

...nkiri/core/network/model/response/NetworkTvShow.kt
0.00%
22 Missing :warning:

.../ihenkiri/core/network/service/TVSeriesListsApi.kt
0.00%
8 Missing :warning:

.../kotlin/me/jerryokafor/ihenkiri/ui/MainActivity.kt
22.22%
5 Missing and 2 partials :warning:

.../jerryokafor/core/ui/components/MovieListFilter.kt
25.00%
2 Missing and 1 partial :warning:

...n/kotlin/me/jerryokafor/ihenkiri/ui/IhenkiriApp.kt
60.00%
2 Missing :warning:

Additional details and impacted files
@@             Coverage Diff              @@
##               main      #46      +/-   ##
============================================
- Coverage     75.99%   72.92%   -3.07%
  Complexity      110      110
============================================
  Files            59       62       +3
  Lines          2345     2445     +100
  Branches        284      296      +12
============================================
+ Hits           1782     1783       +1
- Misses          342      442     +100
+ Partials        221      220       -1

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


test: Remove "ansible-galaxy collection install"

Since "ANSIBLE_STDOUT_CALLBACK=yaml" has been removed from all ostree test script, "ansible-galaxy collection install" should be removed as well.
We encountered galaxy server issue in test https://gitlab.com/osbuild/ci/osbuild-composer/-/jobs/2120498876#L2336
Let's remove it to avoid issues.

Packer is failing: https://gitlab.com/osbuild/ci/osbuild-composer/-/jobs/2120554699  ... Maybe this should be removed as well? https://github.com/osbuild/osbuild-composer/blob/main/distribution/Dockerfile-ubi-packer#L7

Packer is failing: https://gitlab.com/osbuild/ci/osbuild-composer/-/jobs/2120554699 ... Maybe this should be removed as well? https://github.com/osbuild/osbuild-composer/blob/main/distribution/Dockerfile-ubi-packer#L7

We need that to build the rpms for the worker images I'm afraid.

Packer is failing: https://gitlab.com/osbuild/ci/osbuild-composer/-/jobs/2120554699 ... Maybe this should be removed as well? https://github.com/osbuild/osbuild-composer/blob/main/distribution/Dockerfile-ubi-packer#L7

We need that to build the rpms for the worker images I'm afraid.

I see, well apparently they had some issues with cloudflare and should be resolved now... The other failures are on centos-9 which are related to https://github.com/osbuild/osbuild/commit/d8bfe13fdd63b1aeba3806c4fce2890f77df5991 I think


apache and mysql can not  start automaticly

I installed the apache+php+mysq, and I can start apache and mysql by hand.But they are can not  start automaticly. When I restart the bash, I must be start the apache and mysql by hand again

Currently we do not go through Ubuntus init process which launches daemons like these. If you'd like these to start automatically when you launch bash I'd suggest adding the start commands to your .bashrc file.

Greate, this is really a good idea. Thanks very much!

Glad that was helpful, going to go ahead and close this out.


⚠ GitLab Server has degraded performance

In d6f0149, GitLab Server (https://gitlab01.its-telekom.eu) experienced degraded performance:

HTTP code: 200
Response time: 11206 ms

Resolved: GitLab Server performance has improved in e5297c4.


get ExpConeQuad to canonicalize

The main problem was that ExpConeQuad wasn't defining the get_data function, which is required for constraint data that aren't CVXPY Expressions. (Note that PowConeND had a get_data function.)
I also made a test file by copying an existing test. The solver runs and everything, but the tests fail, so there is some problem in the canonicalization.
I suggest you write tests that check correctness of the quadrature methods. Compare the result of your function for integrating log (more accurately, the result of a small wrapper around your quadrature nodes method) to the result from an appropriate SciPy function.

There are a ton of files that are changed in this PR. However, almost all of those files are for commits from merged PRs on the main cvxpy repo. You should only look at my changes to the ExpConeQuad related stuff. (But I do suggest you just merge the PR as-is and build from there.)


Support for Vanguard

I was wondering if we have considered adding support for funds sold in Vanguard (similar to Schwab and T212) and how much work that would be? :)

You can take a look at parsers for other brokers. Basically exported transactions need to be converted to unified HMRC format.


[1.5] Remove Kozani. Change of direction making the code obsolete

Cherry-pick of #4219
Removing code that does not ship in 1.5 saving time and resources and preventing false positives in tests and static analysis.

/azp run


registries.yaml environment variables for username and password

Is there a way to use environment variables for the registries.yaml file? It feels insecure to save plain text username and passwords on disk.
https://rancher.com/docs/k3s/latest/en/installation/private-registry/
How K8s does it:
https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/

K3s is is K8s. You are welcome to use image pull secrets if you want, they work just fine. Some users prefer to configure registries (endpoints, credentials) on the node itself in the container runtime config, instead of in the control plane.
Even if we allowed storing credentials in environment variables... you would still have to define the variable contents somewhere - in the systemd unit or env file. I don't see how simply moving them from one file to another would make things any more secure. Do you have a proposal for how this might work that wouldn't just result in their being somewhere else on disk?

Closing as this is something we're considering a solution to in the Backlog


Update snippet for smart wallet

📝 Changed routes:

/dashboard/wallet

(view full size)

Commit 508f3a4fabd82b21e15a90f09c83e0ad603337d8 (https://thirdweb-r9zog6og3.thirdweb-preview.com).


Problems loading bazel itself from eclipse

When importing the current bazel repository, I get an error that the root is not a workspace; apparently it still works, but when adding targets, enter does not add the target, one needs to see the small + at the side.

I confirm that it works for me so might be either ubuntu or the eclipse version. Will do more test when I have time.

I think this has to do with the bazel install path on ubuntu. I'm having a similar problem. When I go to import it tells me the same thing.
The path to bazel is set  in Activator.class to
  public static final String DEFAULT_BAZEL_PATH = "/usr/local/bin/bazel";
In my environment the path is /usr/bin/bazel
I setup a symlink and it took care of the error message but I can't click finish, it stays grey'd out.

I am fixing that at HEAD to show a proper error when Bazel is not found, I haven't cut a new release yet I want to do a bunch of other stuff.

Also another fix at HEAD: there was a race condition in the command invocation on Linux which could largely explain the behaviour @r4nt have seen. I still want to do some more improvements before cutting a release.


Support for acceptance of device's leaf certificate with multiple OID items in the Subject field

Problem
Currently CHIP code does not accept device's leaf certificate with multiple OID items in the Subject field.
Proposed Solution
Add support for DNs containing multiple RDNs, and multiple attributes per RDN (touches to both ChipND class and DecodeConvertDN() function.)

@bitkis @emargolis Is this still an issue?

I believe this shouldn't be an issue. CHIP Certificate code supports up to 5 RNDs in the subject/issuer DN and about 20 different attribute types.

Issue Review: Closing based on @emargolis's feedback.


no longer works?

Hi, As far as I can tell this will no longer work as autoprefixer uses postcss-cli globally. I receive command 'autoprefixer.execute' not found

for some reason I had to manually install npm modules in ~/.vscode/extensions/mrmlnc.vscode-autoprefixer-2.1.2/ which fixed error


Prisma's SQL Server Jest Tests Fails --> my_db: the URL must start with the protocol sqlserver://

Bug description
Working on the prisma source codes, i've opened the repo inside of a devcontainer. When trying to run the Jest tests of the migrate package i get this error when it gets to the SQLServer portions. But looking at the code at https://github.com/prisma/prisma/blob/main/TESTING.md TEST_MSSQL_JDBC_URI_MIGRATE does start with a "sqlserver://"

How to reproduce

open the prisma repo inside of a devcontainer sharing the same network as the host and follow the steps to contribute guide to set it up.
also, on the host, launch the docker/docker-compose.yml container
on the devcontainer, open a terminal window in /workspaces/prisma/packages/migrate
run pnpm run test -- MigrateDev.test -t "create first migration"
everything will complete except the SQL Server tests... because it will say:

Error validating datasource `my_db`: the URL must start with the protocol `sqlserver://

Expected behavior
for the SQL Server tests to complete with no error.
Prisma information

Environment & setup

OS: Docker Image: https://github.com/prisma/prisma/blob/main/.devcontainer/Dockerfile
Database: SQl Server
Node.js version: v16.15.1
Brand new clone of: https://github.com/prisma/prisma

Prisma Version

Brand new clone of: https://github.com/prisma/prisma
-Commit: 3398d4f9241bc4a0b25201eb3e81b877346d82a1

This has not popped up again, so we can definitely close this.


ersion of Visual Studio are supported

Add a reference to what version of Visual Studio are supported this way documentation will be clear and consistent

Docs Build status updates of commit c509bd5:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

biztalk/install-and-config-guides/whats-new-in-biztalk-server-2020.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Newsletter Page Design

Is your feature request related to a problem? Please describe.
I know designing, I want to create a web design for your newsletter page. Kindly assign me this task under Gssoc.
Describe the solution you'd like
I would design a web page for it.
Describe alternatives you've considered
No response
Additional context
No response
Code of Conduct

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

@gaurimadan ?


Contributor guidelines

At the moment, the README links to the general contributor guidelines for the organisation. Should we make a more specific one for this repo?
Should we include a template when someone creates a new issues or PR?
Check what bots are active (welcome bot?) and if they need updating

@BatoolMM do you have capacity to help with this issue? Some of it might not be fully necessary, interesting to get your thoughts.

Of course, happy to work on it - feel free to assign similar tasks to me!


Typo in documentation

There is a small typo in the documentation regarding configurations.
The example of the time-format in wthrr.ron says ap_pm and it throws an error because it expects am_pm

Good observation @BjoernGoettler, thank you!
If you like to, you can submit the fix as a PR. Let me know what you prefer 🙂

I would love to do it...and I actually already tried, but couldn't push my branch.
I'll go through your writtings again, and see if I missed something


ppDAC Node

I was looking to use the DAQCPlate to provide an analog output (0-4V DC) to a Power controller.
Am I missing something or has the ppDAQ Node not developed yet?

A day later and I now have a Pi plate relay plate working using a Python 3 Function Node. Yet to receive the DAQC plate. Can I submit the code I develop  for the Digital to Analog conversion for you to use in your set of nodes? Or is it so simple that the node is not required?

@Murray274 this should be easy to add in. node-pi-plates will need support first, then this repo. Feel free to take a crack at it. Otherwise I should be able to get around to it in a few days.

I bought the DAQC from Mindkits in NZ but Element 14 (Farnell) has then listed. I have them working simply in Node-Red using the Python 3 node. Now I need to input a value to set the voltage rather than setting the voltage in the Python 3 node . More YouTube watching required to understand Python some more.

@Murray274 I've added a ppDAC node along with support in the underlying pi-plates package.  Could you try it out and let me know if it's working for you?  You'll need to update node-red-contrib-pi-plates to the latest published version (0.0.5).  This should update the underlying pi-plates package as well (to it's latest version which is 0.0.3).

Mike, will this work with the DACs on the DAQC2plate as well?
On Thu, Feb 7, 2019 at 11:34 AM Mike Harsch<EMAIL_ADDRESS>wrote:

@Murray274 https://github.com/Murray274 I've added a ppDAC node along
with support in the underlying pi-plates package. Could you try it out and
let me know if it's working for you? You'll need to update
node-red-contrib-pi-plates to the latest published version (0.0.5). This
should update the underlying pi-plates package as well (to it's latest
version which is 0.0.3).
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/mharsch/node-red-contrib-pi-plates/issues/4#issuecomment-461500950,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AIAhAZnN03MbRdRubF8W8UrDAy3sTtT_ks5vLFWFgaJpZM4admob
.

--
Jerry Wasinger
Pi-Plates.com

@pi-plates no, I haven't got around to implementing DAQC2 yet.  See issue #1

Hi Mike. the new node is installed and running well. You do not note what should be on the Output. It looks to be the same as the input.
Many thanks for your help

Hi Mike,
I just inputted a negative value and received an error message on the output through a debug. Perfect
Have you thought about providing a selection to give the user a choice of the output going to max or zero if an error occurs. I can stop the negative value with another node.
The analog output has not changed in my case. Again I can provide a value of zero from the switch I use to inhibit the negative input so I have options.
Just an idea.

@Murray274 I think you're on the right track by using an upstream node (custom function) to filter the incoming values and apply whatever policy makes sense for your case.

implemented in 3701d2bdf1ddcd8993e89897927dc477e8d32b73


Printer added, but offline

First, THANK YOU to whoever has been involved in this project. I've been trying to add a new printer to an existing list of printers for about 5 days now.
The printer got added by starting gcp-connector-util init. I entered the code it gave me at the URL it gave me. Then I entered the email of my GMail account.
But, after adding the printer to my GMail account it shows as offline. I can print to the printer from my computer, so it's not offline.
I'm on Windows 7.
Any ideas? Do I need to run something else?

A few minutes after this, I got the printer to print by running the Google Cloud Print service.


Loading files and possible problem with headers

I'm using yepnope through Modernizr and I have some problems with loading assets on Android (2.3) device.
Everytime when I load page through address bar or normal refresh button in browser, files load as they should with set conditions (yep/nope, callbacks and complete).
But when I load page through normal link on page (clicking on it), nothing connected to Modernizr/yepnope loads and functions which rely on those assets fail to activate - but everything works fine when I load it through address bar and refresh button as I already mentioned.
But then I've tried to force load those files with versioning (e.g. misc.js?v=54) and everything works as it should, but then I have situation where those files load everytime for every page load, without caching, which is not something anyone would want to see :)
Is this something related to headers? Currently my .htaccess file has these headers:
Options +FollowSymLinks

AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css application/javascript text/javascript

<IfModule mod_expires.c>
ExpiresActive On
ExpiresByType text/html "access plus 1 seconds"
ExpiresByType image/gif "access plus 20 years"
ExpiresByType image/jpeg "access plus 20 years"
ExpiresByType image/png "access plus 20 years"
ExpiresByType text/css "access plus 20 years"
ExpiresByType text/javascript "access plus 20 years"
ExpiresByType application/javascript "access plus 20 years"
ExpiresByType application/x-javascript "access plus 20 years"
</IfModule>

Just checked on iOS 5 and it works as it should regardless of refreshing, loading through address bar or clicking on a link.
Here is a test case:
http://jsbin.com/ynload/
http://jsbin.com/ynload1/
http://jsbin.com/ynload2/
Android stock browser (haven't checked others) is the one with problems, all other work as expected.


Handle non-array profiles correctly

Previously we only used the first character of string profiles.  Now we use the whole string.

:+1:


invalid memory address or nil pointer dereference when try to check the VARIABLES LIKE BINLOG_CHECKSUM

https://github.com/siddontang/go-mysql/blob/7a62847fcdb5f46399ad0bc58cccca4a0f7fbb0d/replication/binlogsyncer.go#L253
I Used the maxscale as binlog server, and the server do not support the command "SHOW GLOBAL VARIABLES LIKE ‘BINLOG_CHECKSUM’" , so, the application crashed here at line 253.
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x20 pc=0x60c9d6]

goroutine 53 [running]:
github.com/siddontang/go-mysql/mysql.(*Resultset).GetValue(0x0, 0x0, 0x1, 0xc0000b6b40, 0x1735b6f, 0x2c, 0xc000238940)
	/go/pkg/mod/github.com/siddontang/go-mysql@v0.0.0-20191009015310-f66c8b344478/mysql/resultset.go:238 +0x26
github.com/siddontang/go-mysql/mysql.(*Resultset).GetString(0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0xc000238940)
	/go/pkg/mod/github.com/siddontang/go-mysql@v0.0.0-20191009015310-f66c8b344478/mysql/resultset.go:401 +0x4c
github.com/siddontang/go-mysql/replication.(*BinlogSyncer).registerSlave(0xc00003a2c0, 0xc000438c00, 0xc00008c218)
	/go/pkg/mod/github.com/siddontang/go-mysql@v0.0.0-20191009015310-f66c8b344478/replication/binlogsyncer.go:253 +0x164
github.com/siddontang/go-mysql/replication.(*BinlogSyncer).prepare(0xc00003a2c0, 0x2, 0xc000496090)
	/go/pkg/mod/github.com/siddontang/go-mysql@v0.0.0-20191009015310-f66c8b344478/replication/binlogsyncer.go:331 +0x89
github.com/siddontang/go-mysql/replication.(*BinlogSyncer).prepareSyncPos(0xc00003a2c0, 0x0, 0x0, 0x4, 0x1, 0x2)
	/go/pkg/mod/github.com/siddontang/go-mysql@v0.0.0-20191009015310-f66c8b344478/replication/binlogsyncer.go:602 +0x2f
github.com/siddontang/go-mysql/replication.(*BinlogSyncer).StartSync(0xc00003a2c0, 0x0, 0x0, 0x4, 0x0, 0x0, 0x0)
	/go/pkg/mod/github.com/siddontang/go-mysql@v0.0.0-20191009015310-f66c8b344478/replication/binlogsyncer.go:368 +0x1c5
github.com/pingcap/dm/pkg/binlog/reader.(*TCPReader).StartSyncByPos(0xc0004361e0, 0x0, 0x0, 0xc000000004, 0x0, 0x0)
	/home/jenkins/agent/workspace/build_dm_master/go/src/github.com/pingcap/dm/pkg/binlog/reader/tcp.go:77 +0x1db
github.com/pingcap/dm/relay/reader.(*reader).setUpReaderByPos(0xc00038fc20, 0x0, 0x2)
	/home/jenkins/agent/workspace/build_dm_master/go/src/github.com/pingcap/dm/relay/reader/reader.go:166 +0x30c
github.com/pingcap/dm/relay/reader.(*reader).Start(0xc00038fc20, 0x0, 0x0)
	/home/jenkins/agent/workspace/build_dm_master/go/src/github.com/pingcap/dm/relay/reader/reader.go:111 +0x231
github.com/pingcap/dm/relay.(*Relay).setUpReader(0xc00049c000, 0xc0004c6a80, 0x0, 0x0, 0x5)
	/home/jenkins/agent/workspace/build_dm_master/go/src/github.com/pingcap/dm/relay/relay.go:606 +0x2ae
github.com/pingcap/dm/relay.(*Relay).process(0xc00049c000, 0x195e980, 0xc0004620c0, 0x0, 0x0)
	/home/jenkins/agent/workspace/build_dm_master/go/src/github.com/pingcap/dm/relay/relay.go:256 +0x15d
github.com/pingcap/dm/relay.(*Relay).Process(0xc00049c000, 0x195e980, 0xc0004620c0, 0xc00008d500)
	/home/jenkins/agent/workspace/build_dm_master/go/src/github.com/pingcap/dm/relay/relay.go:191 +0x89
github.com/pingcap/dm/dm/worker.(*realRelayHolder).run(0xc000218c40)
	/home/jenkins/agent/workspace/build_dm_master/go/src/github.com/pingcap/dm/dm/worker/relay.go:167 +0x10a
github.com/pingcap/dm/dm/worker.(*realRelayHolder).Start.func1(0xc000218c40)
	/home/jenkins/agent/workspace/build_dm_master/go/src/github.com/pingcap/dm/dm/worker/relay.go:143 +0x61
created by github.com/pingcap/dm/dm/worker.(*realRelayHolder).Start
	/home/jenkins/agent/workspace/build_dm_master/go/src/github.com/pingcap/dm/dm/worker/relay.go:141 +0x5c

I guess one fast way to fix it is to check whether r is nil, but here I am surprised that maxscale doesn't support this.
if r is nil, you may explicitly set None like https://github.com/siddontang/go-mysql/blob/7a62847fcdb5f46399ad0bc58cccca4a0f7fbb0d/replication/binlogsyncer.go#L263
do you want to have a try to fix it?

the r is not nil, the log is printed as below:
&{Status:2 InsertId:0 AffectedRows:0 Resultset:<nil>}

Got it, you can use r.RowNumber() == 0 to check at first and use r.GetString() to check again. If RowNumbr is 0 or no checksum string, we need to set the checksum to None explicitly.
Can you help us add this, I think it is very easy.

there is no RowNumber in r, crash again.

I uesd r != nil && r.Resultset != nil to check it, and it works.

I had push a PR for this bug, https://github.com/siddontang/go-mysql/pull/486 .


Crashes can get overlooked by ziggy's interface after minimization

When minimization happens after a crash has been found, it seems it is not kept in the corpus.
Users can still find the crash in the crashes directories, but the ziggy interface does not reflect that a crash has been found anymore.
There should be an internal variable that keeps the crash in mind and the interface should point the user to the relevant crashes directory.

Also, this is linked to #3.


7.2.0 breaks Object.freeze

the following code works on v7.1.0
  static propTypes = Object.freeze({
    value: PropTypes.any.isRequired,
  });

Can you elaborate on "works"?
Do you have Object.freeze defined as a wrapper function in settings?

@ljharb "works" means I get no eslint errors
I've tried your suggestion, but still no fortune. still get the errors error  'value' is missing in props validation          react/prop-types
  "settings": {
    "react": {
      "version": "15.6.1"
    },
    "propWrapperFunctions": [ "Object.freeze" ]
  },

That seems like it's a bug in the prop-types rule then (without propWrapperFunctions, you should definitely get a warning there).

@nihgwu If I'm right this pattern was not detected in v7.1.0 and the propTypes validation was just ignored for the component. This is no longer the case since v7.2.0.
But https://github.com/yannickcr/eslint-plugin-react/issues/1366#issuecomment-322123945 should have worked, so there was definitively a bug here.
It should be fixed in next release.


Error: Command Failed with Exit Code 1 (PowerShell not recognized)

I have reinstalled PowerShell, ensured the PATH was correct, and attempted everything else that I can think of, but I am stuck. As of right now I'm out of ideas.

Can you follow the instructions in this stackoverflow thread and try again?

Can you follow the instructions in this stackoverflow thread and try again?

I wish it had been the %PATH% that was the problem. Unfortunately, I already verified all that.
However, after rebooting I was able to "Restart" or something like that (I dont remember the exact "restart" word(s) used) and it work. That said, every other approval with about 4 total errors occurred, but when I retried it worked fine. If I am not mistaken I read in another thread that someone had the same behavior.
So, I suppose this is "fixed" for now... We'll just say that it was a "Did you try turning off and on again?"

Hey @AlexJ-StL, I made a troubleshooting doc to help other users experiencing this issue. Can you pls take a look over it and see if it follows what you had to do to resolve the issue? https://github.com/saoudrizwan/claude-dev/wiki/TroubleShooting-‐-"PowerShell-is-not-recognized-as-an-internal-or-external-command"

Hey @AlexJ-StL, I made a troubleshooting doc to help other users experiencing this issue. Can you pls take a look over it and see if it follows what you had to do to resolve the issue? https://github.com/saoudrizwan/claude-dev/wiki/TroubleShooting-‐-"PowerShell-is-not-recognized-as-an-internal-or-external-command"

No problem! I'll take a look and get back with you if I have any suggestions.

Hey @AlexJ-StL, I made a troubleshooting doc to help other users experiencing this issue. Can you pls take a look over it and see if it follows what you had to do to resolve the issue? https://github.com/saoudrizwan/claude-dev/wiki/TroubleShooting-‐-"PowerShell-is-not-recognized-as-an-internal-or-external-command"

In reference to your explanation of how to add PowerShell to your %PATH%, I don't have anything to add. Although it is reiterating something simple, its never a bad idea to cover all your bases. Especially when dealing with Windows. We all know how frustrating Windows can be.
That said, I did include a theory about my issue along with a screenshot displaying the possible conflicting PowerShell installations. The screenshot was probably unnecessary, but why not I suppose. I quoted it below for simplicity. I hope that it makes sense. If you have any questions feel free to hit me up. I will be sure to pay attention to my notifications to limit response delay.
"You may want to mention that there is the possibility of conflicts between PowerShell installations. The reason I say that is because I have 2 installations of PowerShell. It is true that it hasn't been an issue before, but today is a new day and this installation of Windows 11 is getting pretty old. So, it might be wise to be mindful of which instance of PowerShell (the default installation or the most recent version from the GitHub repo) the path has first and which path is being used by VS Code. I suggest this because I was unable to arrive at any smoking gun when troubleshooting. The most reasonable thing that I could think of was when I reinstalled PowerShell 7 something changed with how the %PATH% was linked with VS Code or in the relationship between the 2 paths in the System Variables Path. This is somewhat speculative, but the only reasonable explanation that I have. I find the idea that simply rebooting 3-4 times is a sufficient answer. So, take this for what its worth in regards to an explanation."

Cheers,
Alex
PS---Fantastic work on Claude-Dev dude... Now that I have been able to use it for a bit, I am very impressed. It has found a place in my tool box amongst few others. So, thank you.

I appreciate the details here Alex! I haven't used windows much so don't really know specifics about powershell issues. I'll be sure to keep this conflicting powershell installation problem in mind if my troubleshooting doc doesn't work for people.


.encode('utf-8') instead of str()

Using str() causes UnicodeEncodeError in get_elements(), hence in get_activities(), get_services(), etc.

can you merge with the current master, so travis will run again? thank you!


fixed URL for Github Action Dynamic Profile Page

The URL link was the same as the link in the previous article.

The URL link was the same as the link in the previous article.

Thank you for saying that
Checked and corrected 💙

✅


Put report check for unknown report

Details

Fixed Issues

$ https://github.com/Expensify/App/issues/5897
Tests | QA Steps

Log in with any account
Navigate to a conversation
In the URL, change the report number to something random

Tested On

[x] Web (only platform allow url change)
[x] Mobile Web
[x] Desktop
[x] iOS
[x] Android

Screenshots

Web

https://user-images.githubusercontent.com/24370807/138151440-e6165955-77ac-4b05-8a11-3881b21d06c5.mp4
Mobile Web

Desktop

iOS

Android

The iOS tests are failing even after a second re-run and I am not sure what the deal is.

It was Xcode. If I merge master it will pass. Let me do it.

Here you go.

🚀 Deployed to staging by @deetergp in version: 1.1.8-10 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


[Draft] Save Pytorch state dict

First draft for https://github.com/huggingface/huggingface_hub/issues/2065
Took inspiration from https://github.com/huggingface/diffusers/pull/7830 + accelerate/transformers implementations.

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint. The docs are available until 30 days after the last update.

Thanks everyone for the reviews! :heart:


Android: AdSize.BANNER at AdPosition.BOTTOM_CENTER is not centered but left aligned

Describe the bug
This only applies to Android, iOS is working as expected!
When loading an ad with the AdSize.BANNER (the dumb version, not the smart one) and the AdPosition.BOTTOM_CENTER, the ad is loaded and displayed. But it appears left aligned instead of centered. This can be reproduced in my app as well as in the example app if the AdSize is changed from .SMART_BANNER to .BANNER for either the top or bottom ad.
Expected behavior
I expect the banner to be centered, as the AdPosition indicates and as it does on iOS 14.1.
Plugin
Version 1.2.4
Smartphone:
Android 29 in simulator and on a real device, when the screen width is greater than 320px

I am not an Android developer (I am coming from iOS/Swift). But I think the culprit is in src/main/java/com/getcapacitor/community/admob/executors/BannerExecutor.java in line 80 where the left and right margins are set to 0.

I am also facing the same problem. Any solutions?

@Adarsh077 I have patched BannerExecutor.java like this as a quick fix, but I don't know if this suitable as a general solution. It does center my bottom banner now though.
        int screenWidth = contextSupplier.get().getResources().getDisplayMetrics().widthPixels;
        int adWidth = (int) (adOptions.adSize.size.getWidth() * density);
        int sideMargin = (screenWidth - adWidth) / 2 ;

        mAdViewLayoutParams.setMargins(sideMargin, densityMargin, sideMargin, densityMargin);

@rdlabo  I would like to contribute regarding this issue. I can update the documentation. Can you give me some directions?

@Adarsh077 Thanks, I'm looking forward.  I expect you will create pull request on this repository. Thanks.

Hello, is this issue fixed? My TOP_CENTER banner looks like this:

@pawel-marciniak  This is fixed. But it is not released yet.

@Adarsh077 I have patched BannerExecutor.java like this as a quick fix, but I don't know if this suitable as a general solution. It does center my bottom banner now though.
        int screenWidth = contextSupplier.get().getResources().getDisplayMetrics().widthPixels;
        int adWidth = (int) (adOptions.adSize.size.getWidth() * density);
        int sideMargin = (screenWidth - adWidth) / 2 ;

        mAdViewLayoutParams.setMargins(sideMargin, densityMargin, sideMargin, densityMargin);

You can try this for a quick fix.

@Adarsh077 Oh, I saw that PR was merged and I thought that it's already released, thanks!

Sorry for late. I released to https://github.com/capacitor-community/admob/releases/tag/v1.2.6 , and will close this issues. Thanks.

Sorry for late. I released to https://github.com/capacitor-community/admob/releases/tag/v1.2.6 , and will close this issues. Thanks.


Missing info and unable to customize spaceline

I have installed spaceline, all-the-icons and spaceline-all-the-icons and configured it:

As can be seen in the image the icons themselves seem to work but there are a lot of info missing in the mode line; version control, encoding etc. In the configuration I have specified to use "arrow" as separator but it's clearly not arrow that is used. Have I configured the packages incorrectly?
Regards, Micke.

I got it to work with the following config:
`(use-package all-the-icons
:ensure t)
(use-package spaceline
:ensure t)
(use-package spaceline-config
:ensure spaceline
:config
(spaceline-helm-mode 1)
(spaceline-emacs-theme))
(use-package spaceline-all-the-icons
:ensure t
:after spaceline
:config
(spaceline-all-the-icons-theme)
(spaceline-all-the-icons--setup-package-updates)
(spaceline-all-the-icons--setup-git-ahead)
(setq-default spaceline-all-the-icons-separator-type 'arrow))
`
I also had to re-enable Emacs VC support which I had disabled.


Offline first / cache for svg files

When we go to the preferences, the svg icons are loaded from the internet.
What if I run my app offline: very bad impression indeed!

We could afford default svg icons for all attributes in the app
We could also cache svg icons - I know svg icons are somehow cached by SvgPicture.network but I don't know how often the cache is refreshed, which could mean either "there's something in the cache, so we will never care about updated internet svg files" or "let's try every 5 minutes to see if the svg file changed"

We could afford default svg icons for all attributes in the app

We should do that.

Actually the preferences are currently the only place where svg files are downloaded (SvgPicture.network instead of SvgPicture.asset).
First part of the solution: as a developer, download once all the corresponding svg files (attributes, btw), and put them in an assets subfolder (assets/attributes/?)
Second part: we need to match the asset file names with each attribute. For the moment we use the provided Attribute.iconUrl field, which is obviously an URL. That means we cannot use it as a file name for assets. We need to either name the asset files something like '${attributeGroup.id}_${attribute.id}', or maintain a Map that matches the iconUrl values with the asset file names.
Then, the SvgPicture.network(...) has a placeholderBuilder field where we can put SvgPicture.asset.

Suggested asset file name for each svg URL
nutritional_quality__nutriscore.svg: https://static.openfoodfacts.org/images/misc/nutriscore-a.svg
nutritional_quality__low_salt.svg: https://static.openfoodfacts.org/images/icons/nutrient-level-salt-low.svg
nutritional_quality__low_sugars.svg: https://static.openfoodfacts.org/images/icons/nutrient-level-sugars-low.svg
nutritional_quality__low_fat.svg: https://static.openfoodfacts.org/images/icons/nutrient-level-fat-low.svg
nutritional_quality__low_saturated_fat.svg: https://static.openfoodfacts.org/images/icons/nutrient-level-saturated-fat-low.svg
processing__nova.svg: https://static.openfoodfacts.org/images/misc/nova-group-1.svg
processing__additives.svg: https://static.openfoodfacts.org/images/icons/0-additives.svg
allergens__allergens_no_gluten.svg: https://static.openfoodfacts.org/images/icons/no-gluten.svg
allergens__allergens_no_milk.svg: https://static.openfoodfacts.org/images/icons/no-milk.svg
allergens__allergens_no_eggs.svg: https://static.openfoodfacts.org/images/icons/no-eggs.svg
allergens__allergens_no_nuts.svg: https://static.openfoodfacts.org/images/icons/no-nuts.svg
allergens__allergens_no_peanuts.svg: https://static.openfoodfacts.org/images/icons/no-peanuts.svg
allergens__allergens_no_sesame_seeds.svg: https://static.openfoodfacts.org/images/icons/no-sesame-seeds.svg
allergens__allergens_no_soybeans.svg: https://static.openfoodfacts.org/images/icons/no-soybeans.svg
allergens__allergens_no_celery.svg: https://static.openfoodfacts.org/images/icons/no-celery.svg
allergens__allergens_no_mustard.svg: https://static.openfoodfacts.org/images/icons/no-mustard.svg
allergens__allergens_no_lupin.svg: https://static.openfoodfacts.org/images/icons/no-lupin.svg
allergens__allergens_no_fish.svg: https://static.openfoodfacts.org/images/icons/no-fish.svg
allergens__allergens_no_crustaceans.svg: https://static.openfoodfacts.org/images/icons/no-crustaceans.svg
allergens__allergens_no_molluscs.svg: https://static.openfoodfacts.org/images/icons/no-molluscs.svg
allergens__allergens_no_sulphur_dioxide_and_sulphites.svg: https://static.openfoodfacts.org/images/icons/no-sulphur-dioxide-and-sulphites.svg
ingredients_analysis__vegan.svg: https://static.openfoodfacts.org/images/icons/vegan.svg
ingredients_analysis__veganvegetarian.svg: https://static.openfoodfacts.org/images/icons/vegetarian.svg
ingredients_analysis__veganpalm_oil_free.svg: https://static.openfoodfacts.org/images/icons/palm-oil-free.svg
labels__labels_organic.svg: https://static.openfoodfacts.org/images/icons/organic.svg
labels__labels_fair_trade.svg: https://static.openfoodfacts.org/images/icons/fair-trade.svg
environment__ecoscore.svg: https://static.openfoodfacts.org/images/icons/ecoscore-a.svg

Actually the preferences are currently the only place where svg files are downloaded (SvgPicture.network instead of SvgPicture.asset).
First part of the solution: as a developer, download once all the corresponding svg files (attributes, btw), and put them in an assets subfolder (assets/attributes/?)
Second part: we need to match the asset file names with each attribute. For the moment we use the provided Attribute.iconUrl field, which is obviously an URL. That means we cannot use it as a file name for assets. We need to either name the asset files something like '${attributeGroup.id}_${attribute.id}', or maintain a Map that matches the iconUrl values with the asset file names.
Then, the SvgPicture.network(...) has a placeholderBuilder field where we can put SvgPicture.asset.

Suggested asset file name for each svg URL
nutritional_quality__nutriscore.svg: https://static.openfoodfacts.org/images/misc/nutriscore-a.svg
nutritional_quality__low_salt.svg: https://static.openfoodfacts.org/images/icons/nutrient-level-salt-low.svg
nutritional_quality__low_sugars.svg: https://static.openfoodfacts.org/images/icons/nutrient-level-sugars-low.svg
nutritional_quality__low_fat.svg: https://static.openfoodfacts.org/images/icons/nutrient-level-fat-low.svg
nutritional_quality__low_saturated_fat.svg: https://static.openfoodfacts.org/images/icons/nutrient-level-saturated-fat-low.svg
processing__nova.svg: https://static.openfoodfacts.org/images/misc/nova-group-1.svg
processing__additives.svg: https://static.openfoodfacts.org/images/icons/0-additives.svg
allergens__allergens_no_gluten.svg: https://static.openfoodfacts.org/images/icons/no-gluten.svg
allergens__allergens_no_milk.svg: https://static.openfoodfacts.org/images/icons/no-milk.svg
allergens__allergens_no_eggs.svg: https://static.openfoodfacts.org/images/icons/no-eggs.svg
allergens__allergens_no_nuts.svg: https://static.openfoodfacts.org/images/icons/no-nuts.svg
allergens__allergens_no_peanuts.svg: https://static.openfoodfacts.org/images/icons/no-peanuts.svg
allergens__allergens_no_sesame_seeds.svg: https://static.openfoodfacts.org/images/icons/no-sesame-seeds.svg
allergens__allergens_no_soybeans.svg: https://static.openfoodfacts.org/images/icons/no-soybeans.svg
allergens__allergens_no_celery.svg: https://static.openfoodfacts.org/images/icons/no-celery.svg
allergens__allergens_no_mustard.svg: https://static.openfoodfacts.org/images/icons/no-mustard.svg
allergens__allergens_no_lupin.svg: https://static.openfoodfacts.org/images/icons/no-lupin.svg
allergens__allergens_no_fish.svg: https://static.openfoodfacts.org/images/icons/no-fish.svg
allergens__allergens_no_crustaceans.svg: https://static.openfoodfacts.org/images/icons/no-crustaceans.svg
allergens__allergens_no_molluscs.svg: https://static.openfoodfacts.org/images/icons/no-molluscs.svg
allergens__allergens_no_sulphur_dioxide_and_sulphites.svg: https://static.openfoodfacts.org/images/icons/no-sulphur-dioxide-and-sulphites.svg
ingredients_analysis__vegan.svg: https://static.openfoodfacts.org/images/icons/vegan.svg
ingredients_analysis__veganvegetarian.svg: https://static.openfoodfacts.org/images/icons/vegetarian.svg
ingredients_analysis__veganpalm_oil_free.svg: https://static.openfoodfacts.org/images/icons/palm-oil-free.svg
labels__labels_organic.svg: https://static.openfoodfacts.org/images/icons/organic.svg
labels__labels_fair_trade.svg: https://static.openfoodfacts.org/images/icons/fair-trade.svg
environment__ecoscore.svg: https://static.openfoodfacts.org/images/icons/ecoscore-a.svg

I completely agree, SVGs should be included in the app and I like the '${attributeGroup.id}_${attribute.id}' solution better than a URL map (it will continue to work even if the URL changed for any reason).
And for your information, I generally optimize SVGs with https://jakearchibald.github.io/svgomg/ before integrating them in a flutter app since parsing SVG is costly. You can easily divide the SVG size by 2 with that tool.

I completely agree, SVGs should be included in the app and I like the '${attributeGroup.id}_${attribute.id}' solution better than a URL map (it will continue to work even if the URL changed for any reason).
And for your information, I generally optimize SVGs with https://jakearchibald.github.io/svgomg/ before integrating them in a flutter app since parsing SVG is costly. You can easily divide the SVG size by 2 with that tool.

Thank you @FredJul for your comment: then should we even think about using the iconUrl field?
Suggested algorithm for attribute display:

we "compute" the corresponding file name as 'assets/attributes/${attributeGroup.id}_${attribute.id}.svg'
if the file is there, end of the story: we display this svg and that's it
if the file is not there, we have a go with iconUrl (brand new attribute?)
in all cases, we have a default (question-mark?) SVG if we could not load either the asset file or the URL.

Regarding SVG optimization, that could be a good idea (but I'm not the creator of the SVG files, I don't know the current process). And keep in mind that we sometimes have a problem with flutter x SVG (cf. #50): we'll have to check if the optimization process doesn't mess with flutter's interpretation of SVG for each file.

Thank you @FredJul for your comment: then should we even think about using the iconUrl field?
Suggested algorithm for attribute display:

we "compute" the corresponding file name as 'assets/attributes/${attributeGroup.id}_${attribute.id}.svg'
if the file is there, end of the story: we display this svg and that's it
if the file is not there, we have a go with iconUrl (brand new attribute?)
in all cases, we have a default (question-mark?) SVG if we could not load either the asset file or the URL.

Regarding SVG optimization, that could be a good idea (but I'm not the creator of the SVG files, I don't know the current process). And keep in mind that we sometimes have a problem with flutter x SVG (cf. #50): we'll have to check if the optimization process doesn't mess with flutter's interpretation of SVG for each file.

The strategy you mentioned seems very good to me.
Optimization is not mandatory and I'm not asking to modify the original SVGs (it's certainly good to keep the original one since this optimization is a lossy one), but it can help flutter_svg to have a smooth display, especially if there is several SVGs.
Also, I wonder why there is PNGs in the app for nutri_score (in assets/product), is it due to a display problem with SVGs?

The strategy you mentioned seems very good to me.
Optimization is not mandatory and I'm not asking to modify the original SVGs (it's certainly good to keep the original one since this optimization is a lossy one), but it can help flutter_svg to have a smooth display, especially if there is several SVGs.
Also, I wonder why there is PNGs in the app for nutri_score (in assets/product), is it due to a display problem with SVGs?

Thanks @FredJul
Oh, it's a lossy optimization?
I don't know the full history about PNGs: all I can say is that there's currently a display problem with some SVGs (cf. #50 and viewbox), more specifically with non-squares like nutriscore.

Thanks @FredJul
Oh, it's a lossy optimization?
I don't know the full history about PNGs: all I can say is that there's currently a display problem with some SVGs (cf. #50 and viewbox), more specifically with non-squares like nutriscore.

Yes it is lossy, it will simplify a bit the paths to reduce the size, but it's often not very visible. For instance, with the nutri_score_a svg and a precision of 2, I see no graphical difference but the size went from 23KB to 8KB, almost divided by 3.

Yes it is lossy, it will simplify a bit the paths to reduce the size, but it's often not very visible. For instance, with the nutri_score_a svg and a precision of 2, I see no graphical difference but the size went from 23KB to 8KB, almost divided by 3.

@FredJul Given the small size of the SVG on the screen (as icons), I think we could use the lossy versions.
But that would add the optimization upstream in the SVG refresh process.
Let's say it can be a solution to keep in mind if we have performance issues regarding app size, disk size or display speed. But it's not a priority right now.
In addition to the 27 files I mentioned, there would be all the variations (e.g "nutriscore=D", "no soybeans=false", ...).

@FredJul Given the small size of the SVG on the screen (as icons), I think we could use the lossy versions.
But that would add the optimization upstream in the SVG refresh process.
Let's say it can be a solution to keep in mind if we have performance issues regarding app size, disk size or display speed. But it's not a priority right now.
In addition to the 27 files I mentioned, there would be all the variations (e.g "nutriscore=D", "no soybeans=false", ...).

I would just use the file name part of the iconUrl field, that way it works well for icons for the preferences + icons for the actual products (which as @monsieurtanuki noted vary depending on products).
e.g. something like that:
https://static.openfoodfacts.org/images/icons/nutrient-level-salt-low.svg --> /assets/icons/nutrient-level-salt-low.svg

I would just use the file name part of the iconUrl field, that way it works well for icons for the preferences + icons for the actual products (which as @monsieurtanuki noted vary depending on products).
e.g. something like that:
https://static.openfoodfacts.org/images/icons/nutrient-level-salt-low.svg --> /assets/icons/nutrient-level-salt-low.svg

Regarding the performance of downloading / parsing / displaying SVG icons:
Server side, for some icons (but not the attribute icons yet), we use https://www.npmjs.com/package/gulp-svgmin which uses https://github.com/svg/svgo . We could certainly look into it if performance is an issue.
But if performance is an issue, I'd be surprised if the SVG optimization actually does make a significant difference (not in saving a few KB, but in display speed). In that case we could consider to just use PNG icons instead, rendered at a reasonably large size.

Regarding the performance of downloading / parsing / displaying SVG icons:
Server side, for some icons (but not the attribute icons yet), we use https://www.npmjs.com/package/gulp-svgmin which uses https://github.com/svg/svgo . We could certainly look into it if performance is an issue.
But if performance is an issue, I'd be surprised if the SVG optimization actually does make a significant difference (not in saving a few KB, but in display speed). In that case we could consider to just use PNG icons instead, rendered at a reasonably large size.

e.g. something like that:
https://static.openfoodfacts.org/images/icons/nutrient-level-salt-low.svg --> /assets/icons/nutrient-level-salt-low.svg

I guess we can do that smoothly (oops, I did it again).
Something like a smart SvgMetaDisplay(String iconUrl) would do the trick.
The more painful part will be to download all the SVG files and include them in the app folders.

e.g. something like that:
https://static.openfoodfacts.org/images/icons/nutrient-level-salt-low.svg --> /assets/icons/nutrient-level-salt-low.svg

I guess we can do that smoothly (oops, I did it again).
Something like a smart SvgMetaDisplay(String iconUrl) would do the trick.
The more painful part will be to download all the SVG files and include them in the app folders.

Actually SVG optimization does not seem like only an option, at least for the asset files.
I've just tested different configurations around nutriscore B (23.36Kb), cf. the following video:

"Good nutritional quality" : I display an optimized version of nutriscore B, stored as an asset (https://jakearchibald.github.io/svgomg/, precision=0, size=3.57Kb) (!)
=> the display is immediate for optimized asset files (we don't even see the circular progress indicator)
"Salt" : I display the normal version of nutriscore B, taken from the network
=> the display takes about 500ms, that seems long (especially if you have numerous SVG files to display at the same time)
"Sugars": I display the normal version of nutriscore B, stored as an asset
=> almost the same time as with the network - the size of the file is a problem for the display, but not really for the download (with the wifi at least)
"Fat": I display the normal version of nutriscore B, taken from the network, with the optimized version as an asset while waiting
=> it looks immediate, and I don't think anybody noticed the difference between the start (optimized asset) and the end (normal network version)

Tell me what you think, guys.
https://user-images.githubusercontent.com/11576431/104200756-51efe280-5429-11eb-8453-ecc5c6c139e7.mov

Actually SVG optimization does not seem like only an option, at least for the asset files.
I've just tested different configurations around nutriscore B (23.36Kb), cf. the following video:

"Good nutritional quality" : I display an optimized version of nutriscore B, stored as an asset (https://jakearchibald.github.io/svgomg/, precision=0, size=3.57Kb) (!)
=> the display is immediate for optimized asset files (we don't even see the circular progress indicator)
"Salt" : I display the normal version of nutriscore B, taken from the network
=> the display takes about 500ms, that seems long (especially if you have numerous SVG files to display at the same time)
"Sugars": I display the normal version of nutriscore B, stored as an asset
=> almost the same time as with the network - the size of the file is a problem for the display, but not really for the download (with the wifi at least)
"Fat": I display the normal version of nutriscore B, taken from the network, with the optimized version as an asset while waiting
=> it looks immediate, and I don't think anybody noticed the difference between the start (optimized asset) and the end (normal network version)

Tell me what you think, guys.
https://user-images.githubusercontent.com/11576431/104200756-51efe280-5429-11eb-8453-ecc5c6c139e7.mov

This is the (total?) list of the attribute SVG files, with their sizes.
Several remarks:

we're talking about 97 files and 826KB...
in most cases, we're dealing with little SVG files (5KB or less), where SVG optimization wouldn't be that useful
in 2 cases, we're dealing with medium SVG files, like nutriscore (x6) (24KB optimizable down to 5Kb) or ecoscore (x6) (11KB optimizable down to 3KB)
in the case of nuts, someone made a joke: we're talking about 110KB files (x3), that cannot be optimized because the major part is an embedded base64 picture...

    2506 0-additives.svg
    2730 1-additives.svg
    3445 10-additives.svg
    3238 2-additives.svg
    3499 3-additives.svg
    2769 4-additives.svg
    3187 5-additives.svg
    3464 6-additives.svg
    2687 7-additives.svg
    3722 8-additives.svg
    3453 9-additives.svg
    5481 contains-celery.svg
    3375 contains-crustaceans.svg
    2185 contains-eggs.svg
    3057 contains-fish.svg
    3602 contains-gluten.svg
    2947 contains-lupin.svg
    2575 contains-milk.svg
    4460 contains-molluscs.svg
    2702 contains-mustard.svg
  109453 contains-nuts.svg
    3239 contains-palm-oil.svg
    2458 contains-peanuts.svg
    3954 contains-sesame-seeds.svg
    3028 contains-soybeans.svg
    5295 contains-sulphur-dioxide-and-sulphites.svg
   11166 ecoscore-a.svg
   11255 ecoscore-b.svg
   11598 ecoscore-c.svg
   11075 ecoscore-d.svg
   10970 ecoscore-e.svg
   11906 ecoscore-unknown.svg
    4259 fair-trade-unknown.svg
    4425 fair-trade.svg
    5484 may-contain-celery.svg
    3378 may-contain-crustaceans.svg
    2188 may-contain-eggs.svg
    3060 may-contain-fish.svg
    3596 may-contain-gluten.svg
    2950 may-contain-lupin.svg
    2578 may-contain-milk.svg
    4463 may-contain-molluscs.svg
    2705 may-contain-mustard.svg
  109456 may-contain-nuts.svg
    3199 may-contain-palm-oil.svg
    2461 may-contain-peanuts.svg
    3957 may-contain-sesame-seeds.svg
    3031 may-contain-soybeans.svg
    5298 may-contain-sulphur-dioxide-and-sulphites.svg
    5851 no-celery.svg
    3736 no-crustaceans.svg
    2555 no-eggs.svg
    3418 no-fish.svg
    3972 no-gluten.svg
    3317 no-lupin.svg
    2936 no-milk.svg
    4830 no-molluscs.svg
    3072 no-mustard.svg
  109823 no-nuts.svg
    2828 no-peanuts.svg
    4324 no-sesame-seeds.svg
    3398 no-soybeans.svg
    5665 no-sulphur-dioxide-and-sulphites.svg
    2383 non-vegan.svg
    2301 non-vegetarian.svg
    4509 not-fair-trade.svg
    4448 not-organic.svg
    5945 nova-group-1.svg
    6340 nova-group-2.svg
    6495 nova-group-3.svg
    5961 nova-group-4.svg
    5689 nova-group-unknown.svg
    2263 nutrient-level-fat-high.svg
    2262 nutrient-level-fat-low.svg
    2276 nutrient-level-fat-unknown.svg
    3410 nutrient-level-salt-high.svg
    3409 nutrient-level-salt-low.svg
    3423 nutrient-level-salt-unknown.svg
    2889 nutrient-level-saturated-fat-high.svg
    2888 nutrient-level-saturated-fat-low.svg
    2902 nutrient-level-saturated-fat-unknown.svg
    2696 nutrient-level-sugars-high.svg
    2695 nutrient-level-sugars-low.svg
    2709 nutrient-level-sugars-unknown.svg
   23696 nutriscore-a.svg
   23924 nutriscore-b.svg
   24204 nutriscore-c.svg
   23718 nutriscore-d.svg
   23175 nutriscore-e.svg
   21725 nutriscore-unknown.svg
    4229 organic-unknown.svg
    4286 organic.svg
    3227 palm-oil-free.svg
    2394 vegan-status-unknown.svg
    2379 vegan.svg
    2312 vegetarian-status-unknown.svg
    2297 vegetarian.svg
  826153 total

This is the (total?) list of the attribute SVG files, with their sizes.
Several remarks:

we're talking about 97 files and 826KB...
in most cases, we're dealing with little SVG files (5KB or less), where SVG optimization wouldn't be that useful
in 2 cases, we're dealing with medium SVG files, like nutriscore (x6) (24KB optimizable down to 5Kb) or ecoscore (x6) (11KB optimizable down to 3KB)
in the case of nuts, someone made a joke: we're talking about 110KB files (x3), that cannot be optimized because the major part is an embedded base64 picture...

    2506 0-additives.svg
    2730 1-additives.svg
    3445 10-additives.svg
    3238 2-additives.svg
    3499 3-additives.svg
    2769 4-additives.svg
    3187 5-additives.svg
    3464 6-additives.svg
    2687 7-additives.svg
    3722 8-additives.svg
    3453 9-additives.svg
    5481 contains-celery.svg
    3375 contains-crustaceans.svg
    2185 contains-eggs.svg
    3057 contains-fish.svg
    3602 contains-gluten.svg
    2947 contains-lupin.svg
    2575 contains-milk.svg
    4460 contains-molluscs.svg
    2702 contains-mustard.svg
  109453 contains-nuts.svg
    3239 contains-palm-oil.svg
    2458 contains-peanuts.svg
    3954 contains-sesame-seeds.svg
    3028 contains-soybeans.svg
    5295 contains-sulphur-dioxide-and-sulphites.svg
   11166 ecoscore-a.svg
   11255 ecoscore-b.svg
   11598 ecoscore-c.svg
   11075 ecoscore-d.svg
   10970 ecoscore-e.svg
   11906 ecoscore-unknown.svg
    4259 fair-trade-unknown.svg
    4425 fair-trade.svg
    5484 may-contain-celery.svg
    3378 may-contain-crustaceans.svg
    2188 may-contain-eggs.svg
    3060 may-contain-fish.svg
    3596 may-contain-gluten.svg
    2950 may-contain-lupin.svg
    2578 may-contain-milk.svg
    4463 may-contain-molluscs.svg
    2705 may-contain-mustard.svg
  109456 may-contain-nuts.svg
    3199 may-contain-palm-oil.svg
    2461 may-contain-peanuts.svg
    3957 may-contain-sesame-seeds.svg
    3031 may-contain-soybeans.svg
    5298 may-contain-sulphur-dioxide-and-sulphites.svg
    5851 no-celery.svg
    3736 no-crustaceans.svg
    2555 no-eggs.svg
    3418 no-fish.svg
    3972 no-gluten.svg
    3317 no-lupin.svg
    2936 no-milk.svg
    4830 no-molluscs.svg
    3072 no-mustard.svg
  109823 no-nuts.svg
    2828 no-peanuts.svg
    4324 no-sesame-seeds.svg
    3398 no-soybeans.svg
    5665 no-sulphur-dioxide-and-sulphites.svg
    2383 non-vegan.svg
    2301 non-vegetarian.svg
    4509 not-fair-trade.svg
    4448 not-organic.svg
    5945 nova-group-1.svg
    6340 nova-group-2.svg
    6495 nova-group-3.svg
    5961 nova-group-4.svg
    5689 nova-group-unknown.svg
    2263 nutrient-level-fat-high.svg
    2262 nutrient-level-fat-low.svg
    2276 nutrient-level-fat-unknown.svg
    3410 nutrient-level-salt-high.svg
    3409 nutrient-level-salt-low.svg
    3423 nutrient-level-salt-unknown.svg
    2889 nutrient-level-saturated-fat-high.svg
    2888 nutrient-level-saturated-fat-low.svg
    2902 nutrient-level-saturated-fat-unknown.svg
    2696 nutrient-level-sugars-high.svg
    2695 nutrient-level-sugars-low.svg
    2709 nutrient-level-sugars-unknown.svg
   23696 nutriscore-a.svg
   23924 nutriscore-b.svg
   24204 nutriscore-c.svg
   23718 nutriscore-d.svg
   23175 nutriscore-e.svg
   21725 nutriscore-unknown.svg
    4229 organic-unknown.svg
    4286 organic.svg
    3227 palm-oil-free.svg
    2394 vegan-status-unknown.svg
    2379 vegan.svg
    2312 vegetarian-status-unknown.svg
    2297 vegetarian.svg
  826153 total

I'm fixing the nuts, I was looking at another picture for inspiration and forgot to remove it.

I'm fixing the nuts, I was looking at another picture for inspiration and forgot to remove it.

With an optimization on all SVG files (except the so-called "4 pending nuts"), we gain a lot of space (115 files): 85615 bytes instead of 563873!
cf. #82, where the asset files are optimized.

With an optimization on all SVG files (except the so-called "4 pending nuts"), we gain a lot of space (115 files): 85615 bytes instead of 563873!
cf. #82, where the asset files are optimized.

Fixed by #82:

there's a list of 119 optimized SVG icons in assets/cache/
with the same name as the iconUrl
when we want to display an iconUrl, we use SvgCache, which tries to quickly find and display the asset file while it's looking for the http version
a possible improvement in the future would be to add a file layer (where we save the downloaded data, and load it before  trying to download them again), as in #41, but so far so good

Fixed by #82:

there's a list of 119 optimized SVG icons in assets/cache/
with the same name as the iconUrl
when we want to display an iconUrl, we use SvgCache, which tries to quickly find and display the asset file while it's looking for the http version
a possible improvement in the future would be to add a file layer (where we save the downloaded data, and load it before  trying to download them again), as in #41, but so far so good


Temperature sensor

Hello while using your code I have found that temperature readings seem too high on the bme280, is there a correct calibration for it?

@marmotae The main high temperature is mainly because the temperature of the main board is high, so the temperature detection of 280 is not in accordance with the actual use environment. I used to use the esp32 on-chip temperature sensor for temperature calibration, but the esp32 on-chip temperature sensor seems to be no longer usable, so there is no way.


Prevent or allow overwriting a device in mode

Currently, only some devices support redefinition/overwriting in a mode. For most others this will probably lead to undefined behaviour. Find a way to define if overloading is fine for a device and enforce it.

Change ModeDevice to device device_added_to_mode and device_overwritten_in_mode


Heroku deployment missing database

Here's the repo I'm trying to deploy: https://github.com/jerivas/blog-posts (branch chapters)
And a log of my first deployment to Heroku:

Open existing Python project
Switch to new branch dsd
Create account on Heroku
Visit DSD docs to know what's next
See I need the Heroku CLI
Install it, log in with heroku auth:login
Verify runserver works. It does
pip install django-simple-deploy
Ran python manage.py simple_deploy --platform heroku
Lots of output, no errors. It says "Your project is now configured" near the end. It would be nice if output was collapsed under each "step", kinda like docker build. Also would appreciate some color and bold styles to clearly mark success
Reviewed changes in the repo, looking good
Committed the changes
Ran git push heroku main, noticed Heroku picked up a different Python version
Push failed because collectstatic doesn't work (that's on me). Heroku says I can disable collectstatic with heroku config:set DISABLE_COLLECTSTATIC=1. Did that
Ran git push heroku main again. It worked! But it says I pushed from another branch
Ran git push heroku dsd:main
Got a 500 error message. It looks like the app is deployed but Heroku didn't deploy any databases

I have cloned your project, modified it slightly for running on macOS, ie .gitignore, and pushed the main branch. i had the same results you saw; no errors in the push output, but a 500 error when I visit the page.