401 Unauthorized errors every hour

Bug Report
https://github.com/tommilligan/prowl-github-app/
Current Behavior
I have a probot app running full time on AWS. The app

listens for events
performs some long-running (~2 min) checks
responds to the GitHub API

Occasionally, I get 401 Unauthorized errors back from the API when performing actions:
HttpError: {"message":"Bad credentials","documentation_url":"https://developer.github.com/v3"}
    at response.text.then.message (/usr/src/app/node_modules/@octokit/rest/lib/request/request.js:78:19)
    at <anonymous>
    at process._tickDomainCallback (internal/process/next_tick.js:228:7)

These errors always happen at the same point in the hour - e.g. for a single instance, at 10:05, 11:05, 14:05 and 21:05.
I suspect this is because in the ~2 min check time, the OAuth token attached to the event context expires. This then results in unauthorized requests when calling context.github. New events are received with valid tokens, which do not error.
Expected behavior/code
Not to get Unauthorized errors sproradically
Environment

Probot version(s): 7.0.0
Node/npm version: node 8.9.4/npm 5.6.0
OS: Ubuntu 18.04.1 LTS

Possible Solution

Requests to either:

pass first time by always using the latest token
on Unauthorized, refresh access token and retry

Additional context/Screenshots
                                    |
+-----------------------------------+------------------------+
|                                                            |
| GitHub API                                                 |
|                                                            |
+-+-----+--------^--------------+---+---+---------^----------+
  |     |        |              |   |   |         |
  v     |event   |action        |       v         |
token   |        |(Authorized)  |   | token       |
  +   +-v------------+          |                 |
  +--->   context    |          |   |             |
  |   +--------------+          |                 |action
  |                             |   |             |(Unauthorized)
  |                            +v---+------------------+
  +---------------------------->  context              |
                               +----+------------------+
                                    |

                                    |
                        probot access_token expires
                                    |

                                    |

Having read a bit more through Application construction, the simplest fix for me would be to have the installationToken cache ttl customiseable:
https://github.com/probot/probot/blob/80fc41ad14edbfca12d443db64f231547aaa6717/src/application.ts#L200
I would reduce this to ~ 5 min before expiry and it would fix my issues.

I'm definitely not opposed to adding an env option here, but I'm wondering what is happening in your app that takes 2 minutes?

performs some long-running (~2 min) checks

We have some pretty complex apps and we've yet to run into this issue. 🤔 I'll jump into the PR now.

@hiimbex if you're interested in the actual scenario: one of the things my app does is check whether commit status is success after a CI update. I delay for a short amount of time by default (say 5s) to allow other CI systems to have started running and set pending statuses.
At work we use Concourse CI, which takes significantly longer to start. Unless I delay API actions, there's a window where the commit status has some CI passed, and some CI not started, and would cause incorrect app behaviour.
+---------------------------+
|  new pull request commit  |
+-----+--------------+------+
      |              |
+-----v------+       |
| codeclimate+----------------> pending
|            |       |
|            |       |
|            |       |
|            |       |
|            +----------------> success
+------------+       |
                     |
                     | (don't want to call API here
                     |  as there are unstarted checks)
                     |
                     |
               +-----v------+
               | concourse  +-> pending
               |            |
               |            |
               |            |
               |            |
               |            +-> success
               +------------+

@tommilligan iam getting this error for every event in Google cloud functions , do you have any solution ?

If it's for every event, it sounds like you have bad credentials, or all of your events take longer than an hour to process. If you have a minimal reproducible example I can take a look

@tommilligan can you check with latest Probot (npm install probot@beta)? We have new thorttling built-in as well as authenticating as installation right before the request, it definitely helped with the problem on WIP

@gr2m could you clarify what your request is here? The issue is closed (I merged a PR a while ago), and I haven't experienced this issue since

All good then, sorry for the noise :) I keep having the "Bad credentials" errors from time to time with the WIP app, and upgrading to Probot 8 beta helped reduce these drastically. So I thought I’d let you know. But if  you don’t see them at all anymore then don’t worry about it

@tommilligan the custom INSTALLATION_TOKEN_TTL setting should no longer be required with the Probot v10. Installation access tokens are renewed on demand at the time of the request via https://github.com/octokit/auth-app.js/, they are no longer set statically at the time when an event is handled.
Let me know if you see a problem with removing the environment variable

Thanks for the update! I don't see any issue with removing the environment variable.
I no longer maintain the app I built (although I hear it's still kicking at my old workplace). Happy to see probot is still actively developed 🙂


Ability to test connectivity for a database service while providing connection config

Is your feature request related to a problem? Please describe.
Ability to test connectivity for a database service while providing connection config.
It is useful for users to fill in the connection details and try out if the connection works
Describe the solution you'd like
Perhaps a test connection button somewhere here:

Describe alternatives you've considered
None
Additional context
None

cc: @harshach @vivekratnavel

@pmbrull we should think about how to do this via Airflow REST APIs. May be another one-time trigger pipeline i.e there is only one pipeline that will take any connection of any service and check if its able to connect or not


Some structs are not documented

I found two structs that are unfortunately not documented on docs.rs.
Can't remember the first one, but the second one is SubmoduleUpdateOptions:

See Submodule.update() docs: https://docs.rs/git2/0.6.8/git2/struct.Submodule.html#method.update The SubmoduleUpdateOptions is not clickable.
Searching for it returns no hit: https://docs.rs/git2/0.6.8/git2/index.html?search=SubmoduleUpdateOptions
Source contains documentation: https://github.com/alexcrichton/git2-rs/blob/master/src/submodule.rs#L205-L210

What kind of glitch (if it's really one) could be causing this? Maybe a cargo issue?

Weirdly enough, this module is private? I cannot use it... Maybe that's why that it wasn't documented?
error[E0603]: module `submodule` is private
   --> src/git.rs:182:53
    |
182 |                         let mut submodule_options = git2::submodule::SubmoduleUpdateOptions::new();
    |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: aborting due to previous error

In any case because I cannot create a git2::submodule::SubmoduleUpdateOptions, I cannot call git2::submodule::Submodule::update()! :(

Oh oops! These should be reexported at the root for sure and that I think would force them to be documented, thanks for finding this!
Would you be interested in sending a PR for this?

Sure, if it's as simple as the re-export, I'll give it a try!


NuGet package

It'd be great to have MIConvexHull NuGet package strong-named (signed).

hmm, I don't know what this means. Can you say more? send links?

The MIConvexHull DLL is currently not signed. Singing it is a simple process, described e.g. here: https://docs.microsoft.com/en-us/dotnet/framework/app-domains/how-to-sign-an-assembly-with-a-strong-name
Unless I am mistaken, I see no problem in creating a private/public key pair specifically for the purpose of this project, and publishing both. As long as they are not reused in other projects, I can't imagine how this can go wrong :-)

thanks, it is now signed.


No way to filter just for zips or pdfs?

Currently it's a great tool but it's missing being able to fine tune what we download to certain filetypes.

Being able to filter for words would be great too. For instance a patreon I'm subbed to posts 3 zips in their highest tier. One called Mithril for the highest tier, then Platinum and Gold for the tiers below. Right now I have to download all three via the PatreonDownloader app because I can't selectively pick for links/ files with the word 'Mithril' in them.  It'd be a super handy addition :)

This pretty much expands ideas from #117, so I have quoted your messages there.


penv-807 grpc metrics

- What I did
grpc metrics
- How I did it
- How to verify it
- Description for the changelog

Codecov Report

Merging #214 into release/1.2 will decrease coverage by 0.02%.
The diff coverage is 0.00%.

@@               Coverage Diff               @@
##           release/1.2     #214      +/-   ##
===============================================
- Coverage        62.90%   62.87%   -0.03%
===============================================
  Files               61       62       +1
  Lines             5054     5056       +2
===============================================
  Hits              3179     3179
- Misses            1563     1565       +2
  Partials           312      312

Impacted Files
Coverage Δ

etl/exporter/metrics.go
0.00% <0.00%> (ø)

instrumentation/metrics/prometheus.go
0.00% <0.00%> (ø)

Continue to review full report at Codecov.

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


没有开启摄像头选项

之前版本可以打开摄像头，该版本没有打开摄像头选项

Sorry, in English please.

之前版本可以打开摄像头，该版本没有打开摄像头选项

The remote camera feature was removed due to privacy concerns.


Current master does not work!

What ever you guys installed... Just trying to take its last master. That will probably fix it.

metadatastore master should work just fine

Does.... now struggling with filestore

And so it does ... sorry!


Set path to system ruby in an attribute so that it can be overriden

Description
Allows users to override the system ruby path if ruby is installed into a non standard location and Chef has been installed without an embedded ruby (eg. from the Gem)
Issues Resolved
#18
Check List

[y ] All tests pass. See https://github.com/chef-cookbooks/community_cookbook_documentation/blob/master/TESTING.MD
[ n] New functionality includes testing.
[ n] New functionality has been documented in the README if applicable
[ y] The CLA has been signed. See https://github.com/chef-cookbooks/community_cookbook_documentation/blob/master/CONTRIBUTING.MD

@tas50 @iennae  you should probably just hit merge on this

Thanks @lamont-granquist for the feedback! Thanks @pghalliday for the contribution!

Thanks :)


Automatic recover from remount as read-only

Sometimes due to network issues, volumes are temporarily unable to be used.
Currently

If it's severe, the engine will crash/quit and the manager will detach it, report the failure to the user. (e.g. #350 , #341 )
Even it's not severe enough for the engine to crash/quit, Linux kernel may decide to remount the volume as read-only, which render the workload useless. (#380 )

I am not sure if it's possible, but since the failed container will be recreated (restarted) by kubernetes , maybe we can reattach the volume and remount it to the node to make it useful for the workload.

The remount won't happen if the volume is down, which result in the current mount point on the node will fail even the workload restarts. Need more closely integrated with Kubernetes to deal with the situation. Probably can be done through operate the volumeattachments.

There is one scenario we can deal with:

Pod is running as a part of Deployment or StatefulSet
Volume detached unexpectedly

Longhorn will delete the related VolumeAttachment when volume detached, let Kubernetes know the volume has detached.

User deleted the pod.
Kubernetes recreated the pod, even on the same node.
The pod would able to run without problem.

However, if in step 3, it's Liveness Probe who restart the container, or the container crashed by itself, it's hard for Longhorn to help because to my observation, kubelet will not remount the disk during pod restart process, result in the bad mount point (pointed to the old disk) still used to create the new pod, which still result in IO error.
If Longhorn can trigger mount/umount for that detached volume, the pod will run fine later. But that is a BIG IF, which requires Longhorn to do some magic on the node.

Cannot find a way for Longhorn to ask Kubernetes to remount the volume at the moment...
The new experimental setting GuaranteedEngineCPU in v0.5.0 may help with the situation if it's due to the resource constrain. We're working on a better solution after v0.5.0 for the issue.

We have changed the deployment model of engine's in v0.6.0, combined with GuaranteedEngineCPU, it should help on the stability of the system.

In fact we might have found a way during investigating the Kubernetes upgrade issue https://github.com/longhorn/longhorn/issues/763 and https://github.com/longhorn/longhorn/issues/703

This is done as a part of https://github.com/longhorn/longhorn/issues/851


Bug fix - getScanNumbers

Javadoc for RawDataFile method getScanNumbers(int msLevel) indicates that msLevel=0 should return all scans, current implementation returns no scans.
I corrected this method to return all scans if msLevel=0. There are other implementations that could be updated to reflect this functionality.
Alternatively, if the Javadoc is out-of-date and this functionality is not desired, this pull request can be disregarded and I will update the Javadoc in question.

Hi Kevin,
the javadoc is outdated indeed. In fact, even the function name is outdated, but we haven't renamed it due to the probably 1000s of merge conflicts.
If you want to access all scans, you should use RawDataFile.getScans() instead. So updating the javadoc is the better solution. Thanks in advance!

@SteffenHeu Sounds good. I thought it might be outdated but I wanted to check to be sure.
I updated the javadoc to reflect the intended usage. I will use your suggestion in my work.

thanks!


MYSQL  interactive timeout

Hey I am using nohup to have the server run and read the output logs. but after a few hours I am getting this error.
4031 (HY000): The client was disconnected by the server because of inactivity. See wait_timeout and interactive_timeout for configuring this behavior.
I have found solutions to fix this but was wondering how you keep your connections active on the main site. What do you use to keep your docker server running?

this is an issue with the mysql db connection

It's because mysql db disconnect after a few hours if inactive. I have pushed a new commit, please refer to the latest one for more details. Basically, add cnx, cur, engine = connect_mysql_database() to the functions that calls the database to check if the connection is working


Test to verify replicator establishes new connection when drive comes back online

We need a test to verify that the replicator establishes a new connection when a drive comes back online after being temporarily unavailable.  We believe that the replicator may not currently correctly re-establish a connection.

Yeah I did some manual testing when I was finishing up 70160edf - but I don't see a test for it - so I'm not sure if there'd be a good way to do a unit test for that?
Maybe copy test_replicator.TestUtilFunctions.test_ec_handoff - cause it calls stop_simulator

I still don't have a real good handle on this one.  In development I can shut down devices/simulators and everything reconnects failure well.
But in testing one time I saw an traceback where the P2P commands would cause the client to spew a  a "connection forcibly closed by peer" that caused the client to think it's connection was faulted and it would get stuck.
I wasn't able to grab the error message at the time, and now looking back at the connection pooling in the replicator it looks like it should be checking for a faulted connection and reconnecting automatically.
Maybe I was running an older version, I changed the default deployment option to COPY and so far haven't seen the issue again.

Since this is only an issue with the PUSH mode replicator I'm going to reduce the priority until we can identify exactly what the issue was with the P2P handling on the drives.

I'm consolidating this issue with issue #53


Omitting return type and returning something causes segfault

fn example(a: i32, b: i32) {
    a + b
}

See also: #230

I get this:
./test.zig:2:7: error: expected type 'void', found 'i32'
    a + b
      ^

help me reproduce the issue?

Full example:
const io = @import("std").io;

fn example(a: i32, b: i32) {
    a + b
}

pub fn main(args: [][]u8) -> %void {
    %%io.stdout.printf("Hello world {}\n", example(10, 20));
}

~/s/zig > zig build hello.zig --name hello --export exe
fish: “zig build hello.zig --name hell…” terminated by signal SIGSEGV (Address boundary error)

Can provide a core dump if you wish.

That did it, thanks.


SPFx application customizer no longer works on modern Site Contents page

Target SharePoint environment
SharePoint Online
What SharePoint development model, framework, SDK or API is this about?
💥 SharePoint Framework
Developer environment
Windows
What browser(s) / client(s) have you tested

[ ] 💥 Internet Explorer
[X] 💥 Microsoft Edge
[X] 💥 Google Chrome
[ ] 💥 FireFox
[ ] 💥 Safari
[ ] mobile (iOS/iPadOS)
[ ] mobile (Android)
[ ] not applicable
[ ] other (enter in the "Additional environment details" area below)

Additional environment details

Edge 122.0.2365.52
Chrome 122.0.6261.70
SPFx 1.18.2
Node.js 18.18.0
React 17.0.1

Describe the bug / error
It seems the bug previously raised in this ticket is reoccurring:
https://github.com/SharePoint/sp-dev-docs/issues/8550
I am currently getting the same issues described in this previous ticket, with the console showing this:

I've also tested on multiple tenants across both Chrome and Edge, with the issue persisting across all of them. This is likewise only occurring on 'Site Contents' pages and is working on other pages, document libraries and lists etc.
Steps to reproduce

Open Dev tools (F12)
Navigate to a 'Site Contents' page.

Expected behavior
Console error "Error: Resource "ItemsScopeManager.key" is being consumed synchronously, but was exposed asynchronously and has not been loaded." appearing and SPFx application customizer has stopped running.

I did a quick test and it works on my machine. I also see the error in the console, but the SPFx app customizer (WikiPakk page tree in my case) loads on the Site Contents page.

SPFx 1.18.0
Chrome Version 122.0.6261.94 (Official Build) (64-bit)
Linux
E5 Developer Tenant
installed from AppSource via SP App Catalog

I should clarify, it does seem to render the components, however CSS existing within these extensions are not being applied to the page.

@BigTimbo - sorry for the long delay.
I'm assuming you might have some custom way of applying styles.
Tested on my side and seems to be working fine:

Could you share your test solution that isn't working?


Why doesn't cmake-tools offer VS2019 64-bit kit for x86?

Operating System:  Windows 10
CMake Version: 3.14.5
VSCode Version: 1.40.2
CMake Tools Extension Version: 1.2.2
Compiler/Toolchain: Visual C++ 2019

I have VS Build Tools 2019 installed on my 64-bit Intel x86 system.  The only build kit shown by cmake-tools that is appropriate for this system is:

The other kits are amd64 or arm.
Why does cmake-tools not offer VS2019 32-bit and 64-bit kits for x86?

I don't reproduce this problem. VSCode detects both for me.
Let's find what makes your scenario different than mine.
Maybe somehow a reduced installation of the VS Build Tools 2019? You see both toolsets present on your machine?
Any other VS installations besides VS Build Tools 2019?

@andreeis Thanks for your reply. Both toolsets are on the machine. The installer shows:

A x64 VS 2019 tool prompt is available:

I also have VS 2017 Professional installed.
Here is the full list of kits offered by cmake-tools:

Oh, amd64_x86 means 64bit compiler tools targeting x86 architecture. It looks like your CMake Tools detects it. Maybe the naming amd64_x86 was confusing.
Try amd64_x86 kit and let us know if you encounter any problems.

@andreeis Sorry, I am not convinced. I built using amd64_x86 and then looked at the properties of the built executable using File Explorer. The compatibility checker suggests that the file is 32-bit, whereas we are expecting 64-bit.

Yes, if you built with amd64_x86, the compiler tools are 64 bit but the produced binary is 32 bit, which is what I understood you wanted, to build for 32 bit with 64 bit toolset.
If you want to produce a 64 bit binary, then you use "Visual Studio Build Tools 2019 Release - amd64" (if you want also the compiler to be 64 bit) or "Visual Studio Build Tools 2019 Release - x86_amd64" (if you want the compiler to be 32 bit).
Let us know if what you want to do is different than what I understood and explained above.

@andreeis Thank you, I understand now.  I was confused by the 'amd' label as I am working on Intel, but I understand now that amd64 applies to both AMD and Intel 64-bit processors.  Perhaps 'x86-64' would be better, but then you might label the kits something like 'x86-64_x86-64' which might be confusing. Thanks again.


Feature/13063

Issue #: /bcgov/entity#13063
Description of changes:

tooltip for coop business type and mailing address

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of the bcrs-entities-create-ui license (Apache 2.0).

I will review this after the other reviewers are done.

I think we need unit test cases for ChangeBusinessType.spec and OfficeAddresses.spec since we are considering speicialResolution as one of the entity types.

added unit test case for both. There was no unit test case ChangeBusinessType.spec, created a new file and added some test


Make specifying an ontology optional + document what is currently expected

Is your feature request related to a problem? Please describe.
In order to create a PatientDatabase, you must specify an ontology. i.e.
patient_collection.to_patient_database(
    patient_database_dir,
    path_to_ontology_dir,
    num_threads=num_threads,
).close()

where path_to_ontology_dir must contain a file called concept.csv, and each unique event code belonging to a patient must be included in this file.
If I don't want / have an ontology (e.g. audit log events, flowsheet events), then I will still be forced to construct this file by making up entries in it. This is problematic for two reasons:

It creates unnecessary extra work for the end user before they are able to use Piton.
The core functionality of Piton (iterating through a patient timeline) should be independent of any ontology-related considerations

Describe the solution you'd like
Ability to not specify an ontology and just load timelines, like in PyHealth.
Describe alternatives you've considered
Internally, the easiest change would be for Piton to just create a dummy concept.csv file and fill it with event codes. This seems very hacky. A better solution would just be to remove the requirement for the user to specify an ontology and to disentangle ontology-related functionality from the rest of the library.

As a first step, documenting what Piton expects from the ontology-standpoint would be super helpful as well (i.e. what the folder structure of path_to_ontology_dir must be at a minimum).
My current understanding:
path_to_ontology_dir/
    concepts/
        concepts.csv.zst # Must contain every event code in your patient database
        concept_relationship.csv.zst # Can be blank

This is currently handled by the MIMIC + simple format tutorials.


[OSPP] Combine GAN and Self-taught Learning to solve small sample problem

This PR is related with #34.
This PR includes a proposal and pending codes.
Total work is excepted to be done for a few days.

lgtm

/lgtm

/approve


Ban "Omit" in favor of "Except"

We should always use Except vs. Omit where possible because Except enforces the property actually exists on the object: https://github.com/sindresorhus/type-fest/blob/main/source/except.d.ts
Might be able to configure on the ban types rule? https://typescript-eslint.io/rules/ban-types/

By the way, Omit is actually the default for TypeScript. Meaning: You can already pass objects with any number of properties, TypeScript only matches that you have the required ones.

TS playground
👆 this is also why it's best not to initialize every constant with a type and let TS infer it instead.
Omit and Except have different use cases:

Omit<{foo: string, bar: string}, 'foo'> is identical to {bar: string}
Except<{foo: string, bar: string}, 'foo'> is identical to {bar: string, foo: never}

The latter is usually not needed.

Interesting, I wasn't aware of that difference in the resulting type (with never). My understanding was that Except enforces you pass property names that exist on the type, so is more resilient to errors due to property name changes
In practice, the resulting type from Except is still more informative at usage sites, because it provides a stronger statement that the property should not exist
Agree that no-restricted-syntax would work for implementing


GUI interface doesn't work

The bottom of the GUI interface window, where Process and Close buttons are located, is not accessible. I can scroll down the selection list of the modules but cannot get to the Process button.
Any suggestions how to repair it?
Thank you

Hello @Zspec777,
Thank you for reporting this bug.
Could you please provide the resolution of your screen?
I think you have this issue because we had to use fixed width and height to center the window in the screen and the height is too high for your resolution.
To resolve this issue, you need to use a higher resolution.
I will have a look if I can update the code to reduce the height of the ALEAPP's window if the resolution is too low.

1st - 3440 x 1440, 2nd - 1080 x 1920. Both are the highest. I already tried using only one display.

Hello @BorntoExplore,
According to your screenshot, you are using ALEAPP on Linux.
I was able to reproduce this issue.
Have a look in your settings -> Accessibility and turn Off Large texte (sorry my Ubuntu is in French)
With Large text turned on:

With Large text turned off (You need to restart ALEAPP):

Let me know if it works for you.

Hello @Zspec777 ,
It is probably related to the text size used by your Windows operating system.
Try to decrease the text size:

On Windows 11, click on the Windows logo, Settings, Accessibility and Text size
On Windows 10, click on the Windows logo --> Settings --> Ease of Access --> Display --> Make text bigger

Slide the cursor to the left and restart ALEAPP.
Let me know if it works for you.

Hi all, I updated to latest version and ran on FFS of an Android. Windows GUI, it will run and complete. I select Close and Open Report, it only goes back to ALEAPP. I can see all the data in Exported Folder. I ran the same extraction in an older version and it worked.
Thank you.
JLT


MEILI-RC Wrong error code returned

Describe the bug
When trying to delete documents by a filter, if everything is well-formed except the attribute is not filterable. The « original » error code coming from milli stays invalid_search_filter; we should patch it.
I think there is already a test for this specific case; I just wrote so many tests at once that I didn't realize it was wrong.
Meilisearch version:
latest rc
This was introduced by this release

Fixed by #3759
will be released in rc1 during this week


1.2.0 update

Pushed commit directly to dev by accident. This pr fixes a release notes typo. And serves as a placeholder for the actual update.
Last commit broke the Build on TC for some reason.

Seems castle.windsor is not yet netcore compatible. Which causes issues when we use xunit here.
https://github.com/castleproject/Windsor/issues/145

@Danthar #6 looks like it fixed the issue with the build throwing that German error message.  It was hard coded into the .csproj so I removed it.

@Danthar Sorry, nevermind that.  It's throwing a different error message now, working on it

@Danthar ok, fixed #6 we should be good.


Convert multi-item attributes to properties

This allows me to constrain these attributes to be of type list or tuple.
Also forced run_directory and configuration_file to use absolute file paths.

Changes Unknown when pulling cdedf83c409064ed7a6e6487a72807f44501eb5a on mdpiper:master into ** on csdms:master**.


Clean up the code and make it more readable

refactor the code to be more readable

its pretty good. could be better. but its fine


Serialization error with a compiled build, but not in Unity Editor

VFW works fine (thanks Vexe) in Unity Editor but when I launch the compiled version of my game i've got this error in output_log.txt  :
A script behaviour has a different serialization layout when loading. (Read 40 bytes but expected 268 bytes)
Did you #ifdef UNITY_EDITOR a section of your serialized properties in any of your scripts?
I'm working with Unity 5.1.1p4 and the last version of VFW Package (vfw133p2)
I use some polymorphism :
public class HeroAbilityData : BetterScriptableObject
{
    public string Name;
    public Sprite Icon;
    public int Level = 1;
    public int GaugeAttackConsumption = 10;

    public HeroAbility Ability;
}

[CreateAssetMenu(menuName = "Hero Abilities/Rush")]
public class HeroAbilityData_Rush : HeroAbilityData
{
    public HeroAbilityData_Rush()
    {
        this.Ability = new Rush(); // <-- Polymorphism, that's why I use VFW
    }
}

[Serializable]
public class HeroAbility
{
    public virtual void Init()
    {

    }

    public virtual void Use()
    {

    }
}

[Serializable]
public class Rush : HeroAbility
{
}

@vexe do you have some ideas, solutions ?
Thanks,
#geff

What have you tried to diagnose the problem? Basic divide and conquer should give you some answers. Take out the HeroAbility field from from HeroAbilityData. Does it make any difference? Try messing around a bit more, remove/add bits and pieces till you find the problem source. If you did, let me know. If you didn't, send me a copy of the project so I take a look.

Hi vexe,
I solved my problem by simplifying it.
My previous code was for a Unity World without support of polymorphism, but thanks to VFW I can delete a part of this code.
I don't need the intermediate Scriptable Object HeroAbilityData_Rush. Instead of creating a specific asset for each ability, I create a HeroAbilityAsset and drag'n drop my hability code.
Thanks for creating VFW, Unity seems more developer friendly and less frustrating with it.
VFW Serializer do not support this type of polymorphism in constructor :
this.Ability = new Rush();

My new code :
[CreateAssetMenu(menuName = "Hero Ability")]
public class HeroAbilityData : BetterScriptableObject
{
    public string Name;
    public Sprite Icon;
    public int Level = 1;
    public int GaugeAttackConsumption = 10;

    public HeroAbility Ability;
}

[Serializable]
public abstract class HeroAbility
{
    public abstract void Init();

    public abstract void Use();
}

[Serializable]
public class Rush : HeroAbility
{
    public override void Init()
    {
    }

    public override void Use()
    {
    }
}

Right. You shouldn't use constructors with Unity's objects (MonoBehaviour/ScriptableObjects) - the resulting behavior is not very deterministic.
That said, I should mention this: I became a game developer for one reason, which is to develop this one very specific game. All the tools I write serve the development of this game. I came from a non-game dev background. I thought most the standards/principles I applied on previous software I wrote are applicable to game dev as well. Since I had no game experience at the time, I looked at the state of Unity's editor and its weak serialization, I went oh man this is pretty bad! How can they not support this and that, they're important! - I started 'assuming' that 'this and that' are important (based on previous non game dev knowledge) - So I went ahead and added custom serialization to fill in the gaps, I was happy!
 As I did, I noticed that the requirements and standards are 'vastly' different than what you'd need/do in normal software dev. I ended up not using most the things I 'assumed' I'd be needing/using, one of those things is 'polymorphic serialization' - I started listening to talks from Jon Blow, Mike Acton, John Carmack and the like about the way they write games... and oh boy is it different from the way we assume how it should be. Those talks made me more open-minded and not so rigid (obeying OOP principles like it's a religion of some sort) - I looked at things like data-oriented development, locality of reference, cache friendliness, etc and how OOP is very harmful in many situations. I looked at data driven designs and many other alternative game dev approaches how to structure your data in a better way. Then I met this awesome ex-blizzard game designer who introduced me to the idea of 'data/property containers', since then I never looked back! I gave some pointers about it here http://forum.unity3d.com/threads/gstring-gc-free-string-for-unity.338588/ (my long post at the end) and here https://github.com/vexe/VFW/issues/38
I highly recommend that you look into those approaches. I'm not dictating how you should program, I'm merely saying "hey, I used to use the same techniques you're using in my games, they didn't work out so well for me. I found this cool alternative technique, worked out pretty well, check it out!"
What I learned from my little experience is that simplicity is what matters most, cause it almost always implies robustness and thus less buggy code, thus more programmer happiness (less frustration, more productivity). OOP encourages complexity, by driving our attention and focus away from the real problem (data) into some very high abstractions that exist in a fairy land (objects) - Games are big software, composed of many systems and sub-systems to those systems. If every sub-system of the game was complex, sophisticated, riddled with all these redundant abstractions, what do you think that output of combining all those systems to build the game would be?
All that said I think OOP is fine for framework and editor codes - it gives users flexibility that in the most case they care about having. Also when inheriting from your base script (Mono/Better/Base Behaviour).. Other than that (gameplay codes) I believe it's completely obsolete (Item system: multiple item types, enemies: different enemy types, AI: different behaviours etc all of those could be implemented in much more superior ways)
Cheers!

Your right, traditional OOP is evil, especilly in component based engine.
Even in traditional development I prefer using Interface instead of inheritance.
But there is something that is sacred for me : Strongly typed code
I prefer using Enum than string and a minimum of class abstraction when needed.
Thanks for your advice and for VFW which should be a part of Unity.
#geff

Correct, enums are very powerful (and underrated)
Dealing with string literals is very error-prone. Take tags for instance, if (other.CompareTag("player")) <-- oops, typo. meant "Player" - But this could easily be addressed with a static class and some constants.
public static class Tags { public const string Player = "Player" }
I only used string literals in the examples in the links for demonstration, I have most my important string keys as constants defined in static classes.


Tie-in with Unicorn Speller API

Make inputs available through the unicorn API.

Useful contacts from gtec:
Rupert Ortner                   Skype:  gtec_ortner
Martin Walchshofer           Skype:  gtec_walchshofer

Unicorn API has been tied in with the visual part of the project. The gameLogic still needs to be attatched to the API

23:08 big win


[Select][base] Prevent unnecessary rerendering of Select options

This PR solves a performance issue with SelectUnstyled and dependent components (Joy's Select).
The root of the problem was that every mouseover event fired on an option caused rerendering of all options. The event correctly dispatches the optionHover action in the listbox reducer, but the surrounding logic caused some functions to be recreated, which caused the SelectUnstyledContext to be updated. This, in turn, caused all the options to detect the changes and rerender themselves.
A couple of optimizations were made:

Functions that don't need to be recreated every render were wrapped in useCallback
The SelectUnstyledContext value does not change when the selected or highlighted items change. Instead, a new way of notifying the options about changes was introduced. The options subscribe to updates in the select, and when an update event is fired, they can decide if the change concerns them and rerender accordingly.

The introduction of the lightweight event bus was necessary to update only the options that were changed. The Material UI implementation doesn't have this problem, as it uses cloneElement, so that the Select can set props directly on its MenuItems. This, however, can cause issues when grouping is used and prevents from using non-MenuItem components (or even Fragments) as Select's children. The discussion about removing cloneElement usage took place in #14943.
With these changes, the Option component has more to do. To prevent developers from having to reimplement this logic in their own design systems, the useOption hook was added.
Additionally, I refactored the code in a few places.
Breaking change
This PR changes what the useSelect and useMenu hooks return.
useSelect
The getOptionProps and getOptionState functions that were returned by useSelect are now members of the contextValue object returned by the hook.
-const { getOptionProps, getOptionState, value } = useSelect({ // ...
+const { contextValue, value } = useSelect({ // ...
+const { getOptionProps, getOptionState } = contextValue;

The whole contextValue object is intended to be passed into the SelectUnstyledContext.Provider that wraps all options.
useMenu
The getItemProps, getItemState, registerItem, and unregisterItem functions that were returned by useMenu are now members of the contextValue object returned by the hook.
-const { getOptionProps, getOptionState, registerItem, unregisterItem } = useMenu({ // ...
+const { contextValue } = useMenu({ // ...
+const { getOptionProps, getOptionState, registerItem, unregisterItem } = contextValue;

The whole contextValue object is intended to be passed into the MenuUnstyledContext.Provider that wraps all items.

Before: https://codesandbox.io/s/practical-oskar-ibmwvn?file=/demo.js
After: https://codesandbox.io/s/gifted-antonelli-srtk0u?file=/demo.js
This fixes #34112.

I had read the thread you linked before the implementation, but I figured implementing nested components would lead to a worse DX for developers working on their own design systems. So I chose better DX over idiomatic React code in this case.
We don't expose any of these non-standard constructs to the external code so that developers won't be confused.

I had read the thread you linked before the implementation, but I figured implementing nested components would lead to a worse DX for developers working on their own design systems. So I chose better DX over idiomatic React code in this case.
We don't expose any of these non-standard constructs to the external code so that developers won't be confused.

If we go down this route, which I am not against (just to be clear :)) we would need to adjust all context based hooks to work in a similar manner, especially when there are collection of options (like list, menu etc.).
We should also probably just export the useSelect and useOption hooks as building blocks for custom components, without anything else (I guess this is already what you had in mind).
I would assume, one of the problems we have is not having a demo where people can see how we intend the hook to be use when the options can be added as children. We only have a demo, where the custom Select component accepts options as a prop. Maybe this is the starting point of the problem. Generally speaking, in an app, if I have a component where I need to render the same component 1000 times, I would anyway likely memoize the component, this is why my thought was that maybe there is a simpler solution to the problem.

If we go down this route, which I am not against (just to be clear :)) we would need to adjust all context based hooks to work in a similar manner, especially when there are collection of options (like list, menu etc.).

I don't think a Menu could have a similar problem - I don't recall a menu with >100 items. But other components, such as Autocomplete could use this pattern as well if it proves to be working well.

We should also probably just export the useSelect and useOption hooks as building blocks for custom components, without anything else (I guess this is already what you had in mind).

Yes, I don't intend any of the messaging stuff to be external.

Generally speaking, in an app, if I have a component where I need to render the same component 1000 times, I would anyway likely memoize the component, this is why my thought was that maybe there is a simpler solution to the problem.

Unfortunately, memoization won't help when a context is updated (+ it wouldn't kick in if options have rich content, i.e., anything more than a string).

Unfortunately, memoization won't help when a context is updated (+ it wouldn't kick in if options have rich content, i.e., anything more than a string).

What I meant is, we could have an OptionWrapper that can read the context, and the inner component that renders the tree for the option can be memoized. That was Option 2 from the thread above.

I can prepare a quick POC to see how it would feel to use it, then we'll compare.

I can prepare a quick POC to see how it would feel to use it, then we'll compare.

Sounds good, we could even try different options with just using MUI Base, doesn't have to be using Joy, if it is easier that way.

The root of the problem was that every mouseover event fired

mouseenter fires less often, I won't if it would make sense. I don't recall why I didn't use mouseenter more in the past.

Functions that don't need to be recreated every render were wrapped in useCallback

Did you measure differences with this? I'm asking because I believe the default outcome with them is more CPU cycles (it takes more time to compare than to recreate the functions). But when it prunes large branches of work, it definitely pays of.

After: https://codesandbox.io/s/gifted-antonelli-srtk0u?file=/demo.js

Is this fix? The hover effect lags behind on this codesandbox.

the default outcome with them is more CPU cycles (it takes more time to compare than to recreate the functions)

Do you have any resources on this? I wonder how can comparing two references be slower than recreating a function. Anyway, in this case, recreating functions that are placed in a context causes a rerender of all listeners of the context (all options), which is definitely slower.

I think that the problem is present in this codesandbox, the hover effect lags +100ms behind

It could be perceived as that because of the transition of the background color. I disabled it so the difference is more noticable.

The problem was rerendering all options when hover moved from one to another.

Ok, it might have been because of bugs with SVGs or some element that wrongly trigger the mousenter event.
One thing I struggle to understand is the use case: why does the select need to know the hovered option? The Select in Material UI doesn't listen to it, the Autocomplete does but I think that it's a mistake I did per #23916. I shouldn't have mixed the hover and keyboard focus states, it breaks the UX and creates bugs like #20602.

Do you have any resources on this? I wonder how can comparing two references be slower than recreating a function.

The why: https://kentcdodds.com/blog/usememo-and-usecallback.

It could be perceived as that because of the transition of the background color. I disabled it so the difference is more noticable.

Oh the transition, yes! @siriwatknp How about we remove these transitions on hover (here and in other components when the delay to feedback is important)? It doesn't seem to help and doing a benchmark with other libraries, I can't find selects that have it that still feel great to use.
Off-topic. It looks like we have a bug with the scroll positioning when opening the select:

Joy UI: https://codesandbox.io/s/frosty-diffie-h5cobm?file=/demo.js wrong position
Material UI: https://codesandbox.io/s/pedantic-danny-euuyd2?file=/demo.js right position
MUI Base: https://codesandbox.io/s/beautiful-haze-6p5o5w?file=/demo.tsx wrong position

One thing I struggle to understand is the use case: why does the select need to know the hovered option?

This was a tough decision to make. Native <select> elements seem to use both mouse and keyboard to highlight an item. I am aware of the problems we have with Autocomplete. That's why I decided to make it configurable, so developers can choose what they like most. The code that runs on option hover calls a reducer with the optionHover action. By default, the built-in reducer just ignores the action, so nothing gets rerendered. However, a developer may choose to provide their own reducer that can highlight an option.

Oh the transition, yes! @siriwatknp How about we remove these transitions on hover (here and in other components when the delay to feedback is important)?

We could leave the "out" transition, but yes, I'd remove the "in" one.

Off-topic. It looks like we have a bug with the scroll positioning when opening the select

Thanks for pointing this out. The Select demo needs a max-height. The Joy Select may as well.

By default, the built-in reducer just ignores the action, so nothing gets rerendered.

Ah ok, looks great 👍

We could leave the "out" transition, but yes, I'd remove the "in" one.

To experiment, I would expect no transition to feel better for hover. However, an "out" transition and no "in" sounds like a great idea to experiment with for the autocomplete, select, and date picker! Right now the autocomplete has no transitions, which feels great, but an out transition could feel a bit better, the date picker has an "in" transition which makes it feel slow: cc @gerdadesign.

Oh the transition, yes! @siriwatknp How about we remove all these transitions on hover (here and in other components when the delay to feedback is important)?

Agree, https://github.com/mui/material-ui/pull/35952 will take care of that.

@michaldudak Maybe this is off-topic but I wonder if the value prop should be required for the Option component?
Without the value prop, it looks like a bug https://codesandbox.io/s/joy-cra-typescript-forked-h6ybih?file=/src/App.tsx

From Joy's perspective, this is a huge improvement! 👏 Great job @michaldudak.

Maybe this is off-topic but I wonder if the value prop should be required for the Option component?

I'll analyze it and create a separate PR.

@smellai Could you please open a new issue so we can track this problem?

Hi, starting with Joy 5.0.0-alpha.76 (.75 is working fine, .76+ are broken), Select > Options > text changes will not update the Select component.
The following code creates the options:
   <Select ...>
    {items.map((item: {key: string, label: string}, idx: number) => (
      <Option key={'opt-' + idx} value={item.key}>
        {symbol ? '-' : ''} {item.label}
      </Option>
    ))}
  </Select>;

When toggling symbol:boolean, the Select will need a click to show the updated options, including the update in the "Select" itself.

Hi, starting with Joy 5.0.0-alpha.76 (.75 is working fine, .76+ are broken), Select > Options > text changes will not update the Select component.
The following code creates the options:
  <Select ...>
    {items.map((item: {key: string, label: string}, idx: number) => (
      <Option key={'opt-' + idx} value={item.key}>
        {symbol ? '-' : ''} {item.label}
      </Option>
    ))}
  </Select>

When toggling symbol:boolean, the Select will need a click to show the updated options, including the update in the "Select" itself.
The current workaround is to fix the version of Joy to alpha-75.

Thanks for reporting the issue! Can you open a new issue?


SVG Banner image

Issue Summary
Setting the banner image to an SVG image causes the banner to disappear
To Reproduce

Create SVG banner
Upload in the administration panel
Go to the homepage to view banner image but its 0px by 0px

This can probably be resolved by setting min-width css property on the banner image?
Technical details:

Browser/OS: Firefox/Mac OS High Sierra
Database: sqlite3

Hey @aniquetahir 👋 This isn't a bug in Ghost itself but rather a theme issue. If you're using Casper then you can open an issue there, otherwise our forum is a good place to get help with customising themes to match your requirements.


SPFx v1.12.1 Release Notes & Docs on SPFx as Teams meetings apps

Category

[x] Content fix
[x] New article

Related issues

n/a

What's in this Pull Request?

update release notes for SPFx v1.12.1
update list notifications doc
add meetings apps docs

Docs Build status updates of commit 6c9cac8:
:warning: Validation status: warnings

File
Status
Preview URL
Details

docs/spfx/build-for-teams-meeting-app.md
:warning:Warning
View
Details

docs/images/build-for-teams/build-for-pre-post-meeting-exp.png
:white_check_mark:Succeeded
View

docs/images/build-for-teams/build-for-teams-meeting-app-add-app.png
:white_check_mark:Succeeded
View

docs/spfx/release-1.12.1.md
:white_check_mark:Succeeded
View

docs/spfx/subscribe-to-list-notifications.md
:white_check_mark:Succeeded
View

docs/toc.yml
:white_check_mark:Succeeded
View

docs/spfx/build-for-teams-meeting-app.md

Line 11, Column 214: [Warning-file-not-found] Invalid file link: '../../build-for-teams-overview.md'.
Line 116, Column 132: [Warning-file-not-found] Invalid file link: '../../deployment-spfx-teams-solutions.md'.
Line 118, Column 155: [Warning-file-not-found] Invalid file link: '../../deployment-spfx-teams-solutions.md'.
Line 242, Column 4: [Warning-duplicate-alt-text] Alt text 'Sync to Teams button in ribbon' is duplicated. Within an article, alt text must be unique.
Line 248, Column 5: [Warning-duplicate-alt-text] Alt text 'Sync to Teams button in ribbon' is duplicated. Within an article, alt text must be unique.
Line 276, Column 3: [Warning-file-not-found] Invalid file link: '../../integrate-with-teams-introduction.md'.
Line 277, Column 3: [Warning-file-not-found] Invalid file link: '../../deployment-spfx-teams-solutions.md'.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Docs Build status updates of commit b02be48:
:warning: Validation status: warnings

File
Status
Preview URL
Details

docs/spfx/build-for-teams-meeting-app.md
:warning:Warning
View
Details

docs/images/build-for-teams/build-for-pre-post-meeting-exp.png
:white_check_mark:Succeeded
View

docs/images/build-for-teams/build-for-teams-meeting-app-add-app.png
:white_check_mark:Succeeded
View

docs/spfx/release-1.12.1.md
:white_check_mark:Succeeded
View

docs/spfx/subscribe-to-list-notifications.md
:white_check_mark:Succeeded
View

docs/toc.yml
:white_check_mark:Succeeded
View

docs/spfx/build-for-teams-meeting-app.md

Line 11, Column 214: [Warning-file-not-found] Invalid file link: '../../build-for-teams-overview.md'.
Line 116, Column 132: [Warning-file-not-found] Invalid file link: '../../deployment-spfx-teams-solutions.md'.
Line 118, Column 155: [Warning-file-not-found] Invalid file link: '../../deployment-spfx-teams-solutions.md'.
Line 242, Column 4: [Warning-duplicate-alt-text] Alt text 'Sync to Teams button in ribbon' is duplicated. Within an article, alt text must be unique.
Line 248, Column 5: [Warning-duplicate-alt-text] Alt text 'Sync to Teams button in ribbon' is duplicated. Within an article, alt text must be unique.
Line 276, Column 3: [Warning-file-not-found] Invalid file link: '../../integrate-with-teams-introduction.md'.
Line 277, Column 3: [Warning-file-not-found] Invalid file link: '../../deployment-spfx-teams-solutions.md'.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Docs Build status updates of commit 14ef33e:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/images/build-for-teams/build-for-pre-post-meeting-exp.png
:white_check_mark:Succeeded
View

docs/images/build-for-teams/build-for-teams-meeting-app-add-app.png
:white_check_mark:Succeeded
View

docs/spfx/build-for-teams-meeting-app.md
:white_check_mark:Succeeded
View

docs/spfx/release-1.12.1.md
:white_check_mark:Succeeded
View

docs/spfx/subscribe-to-list-notifications.md
:white_check_mark:Succeeded
View

docs/toc.yml
:white_check_mark:Succeeded
View

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


PR Request: Re-evaluate use of \n in the reponse body for SocketClient

PR request from Alan:

Could this introduce a bug where there is an additional trailing \n in the response body? Also, isn't there a newline between the headers and response body?

PR review can be found here.

Removed newline from response body. Unsure about comment about newline between the headers and body, it should be read through by the preceding while loop.


Printing messed up

Browser Type/Version: chrome
Issue Description: printing PDF messed up
Brew code to reproduce: Click to expand code
http://homebrewery.naturalcrit.com/share/r1Rx5_Ki

 This homebrew seems perfect, but when I try to export PDF/print it becomes messed up.
Related Images :

You have a few </div> in your code that are messing up the print view. Try removing them and let me know if that fixes it.

But I need them for the green boxes!

I removed the </div>s and it renderers fine. Check it here. I wish you would have at least tried what I suggested instead of disagreeing with me.
You can separate monster blocks that are followed immediately by noteblocks by using a "line break" tag, <br />, so you can remove your periods. Closing div tags, </div> should only be used in conjunction with an opening tag, <div>, otherwise my site will have trouble figuring out what your page is actually doing.


Doubt with connection using a server

Hello MIke.
Great job with serieTerminal's project.
I'm working on a project based on your code. My project is to connect an Arduino with a tablet. This tablet will access to my server. When i access to my webpage using the tablet and i try to connect with the Arduino, the page shows me this message:
Serial Connection FailedTypeError: Cannot read properties of undefined (reading 'requestPort')
But is strange. If I start an apache server to run local the project in the tablet it functions, but if i try to connect with the same project in a server, it didn't function.
So, i think there is a restriction with the API when i try to connect to the API when it's in another server in the network, or something like that.
I tried too whit your project and is the same situation.
Can you support me? please.
Thank you in advance.
Regards!

I read the documentation and y see that is for the HTTPS. I included a TLS in my server and the API functions.


Add guide for using the Gmail connector

Purpose

Adds a guide to demonstrate working with the Gmail connector into the docs/content/src/learn/tutorials/saas-integrations/ folder.

resolves #407

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

Why you are not including code files to this guide? Then on the website, nothing will be shown.


Reject promise on request timeout

Firefox and Chrome trigger the request's onerror handler when a timeout occurs. Safari triggers the ontimeout handler.
This can be observed by making a request to an unroutable address:
var xhr = new XMLHttpRequest()
xhr.onload = console.log.bind(console, 'loaded')
xhr.onerror = console.log.bind(console, 'errored')
xhr.ontimeout = console.log.bind(console, 'timeout')
xhr.open('GET', 'http://<IP_ADDRESS>')
xhr.send()

Fixes #294.
@mislav @fabioberger

Thanks for putting this together dgraham! I hope it gets merged soon!

Would be great to have it documented in the source which lines covering which browser

👍 🚢


haddock-combine: Include dependencies of hsdocs so all haddock links work

Please do a proper merge, not a squash/rebase, when merging. The parent commit of this PR is intentional

Found a bug, temporarily converting to draft.

Working now.

The parent commit of this PR is intentional

Why? What are you trying to do?

The parent commit of this PR is intentional

Why? What are you trying to do?

I want to be able to use these changes in marlowe-cardano, which is on an older version of plutus. This will allow us to directly use cb126ff6d3f20985b34cf19ca31fc7f80f3ae550 instead of creating a backport branch with a cherry-pick

Comment line lengths are too long, see hydra.

I get line too long even if I put the Nix manual URL on its own line, is there any way to disable it for that line?

Like so: https://github.com/input-output-hk/plutus/blob/master/nix/pkgs/haskell/extra.nix#L73
Or you  could disable it for the file, not a big deal.


Use new splice syntax

See https://github.com/lampepfl/dotty/pull/5918

@biboudis do not forget this PR

It is already on top of the commit that fixes build.sbt

And it passed the tests on http://dotty-ci.epfl.ch/lampepfl/dotty


Changing the Social Logos

Logo Update for discord, Twitter and facebook

First step here https://github.com/llaske/sugarizer-doc/pull/49

how do you want the logos to be

how do you want the logos to be

I think the issue is resolved in sugarizer-doc

Yes it's fixed in https://github.com/llaske/sugarizer-doc/pull/54


Feature: replacable editors

The current editors are directly added in the HTML as:
<textarea data-codemirror ...>

With a recent discussion about upgrading to codemirror 6 or the monaco editor, what fell into place is the idea that it would be good to have a way to upgrade this bit in one go somehow. The big question is 'how'.
We currently have 29 instances of the editor, spread out over the different places they are used. Raw API, Unit tests, Page templates each have their own textarea with a slightly different configuration each time.
Ideally, the solution would allow us to replace these editors in one go. This could be done by creating a 'component-editors' component, with pre-configured editors for each type that we need.
The downside is that this requires the creation of a component that is aware of each of the other components. If we ever decide to add another type of component that warrants a different type of editor configuration, adding this would also require the addition of another editor in component-editors. This means the code for this new thing would still be fragmented over the codebase, which is not in line with the thinking of how things should be structured in simplyCode.
So the question is this: can we create something that will allow us to:

replace the current codemirror editor with another editor in one go
while leaving the option on the table to have different editor configuration
without having a component that needs to know about all the other components?

This is an overview of the current set of configurations:
componentDataApi.html
<textarea data-codemirror-mode="javascript" data-simply-field="code" placeholder="function() {...}"></textarea>

componentPageTemplate.html
<textarea data-codemirror-mode="htmlmixed" data-simply-field="code" placeholder="
Page contents
"></textarea>
<textarea data-codemirror-mode="json" data-simply-field="sampledata" placeholder="{}"></textarea>

componentSorters.html
<textarea data-codemirror-mode="javascript" data-simply-field="code" placeholder="function() {...}"></textarea>

componentQUnitTests.html
<textarea data-codemirror-mode="javascript" data-simply-field="test-code" placeholder="function() {...}"></textarea>

componentPageFrame.html
<textarea data-codemirror-mode="htmlmixed" data-simply-field="component.parts.fullApp" placeholder="<!DOCTYPE...">
<textarea data-codemirror-mode="htmlmixed" data-simply-field="component.parts.pagePreview" placeholder="<!DOCTYPE...">
<textarea data-codemirror-mode="htmlmixed" data-simply-field="component.parts.componentPreview" placeholder="<!DOCTYPE...">

componentRawApi.html
<textarea data-codemirror-mode="javascript" data-simply-field="code" placeholder="function() {...}"></textarea>

componentTransformers.html
<textarea data-codemirror-mode="javascript" data-simply-field="render-code" placeholder="function() {...}"></textarea>
<textarea data-codemirror-mode="javascript" data-simply-field="extract-code" placeholder="function() {...}"></textarea>

componentRoutes.html
<textarea data-codemirror-mode="javascript" data-simply-field="code" placeholder="function() {...}"></textarea>

componentHeadHtml.html
<textarea data-codemirror-mode="htmlmixed" data-simply-field="code" placeholder="<link rel='stylesheet'..."></textarea>

componentCommands.html
<textarea data-codemirror-mode="javascript" data-simply-field="code" placeholder="function() {...}"></textarea>

componentFootHtml.html
<textarea data-codemirror-mode="htmlmixed" data-simply-field="code" placeholder="<link rel='stylesheet'..."></textarea>

componentDataSources.html
<textarea data-codemirror-mode="javascript" data-simply-field="load-code" placeholder="function() {...}"></textarea>
<textarea data-codemirror-mode="javascript" data-simply-field="save-code" placeholder="function() {...}"></textarea>
<textarea data-codemirror-mode="javascript" data-simply-field="get-code" placeholder="function() {...}"></textarea>
<textarea data-codemirror-mode="javascript" data-simply-field="set-code" placeholder="function() {...}"></textarea>
<textarea data-codemirror-mode="javascript" data-simply-field="load-code" placeholder="function() {...}"></textarea>
<textarea data-codemirror-mode="javascript" data-simply-field="save-code" placeholder="function() {...}"></textarea>
<textarea data-codemirror-mode="javascript" data-simply-field="get-code" placeholder="function() {...}"></textarea>
<textarea data-codemirror-mode="javascript" data-simply-field="set-code" placeholder="function() {...}"></textarea>

componentPageCss.html
<textarea data-codemirror-mode="css" data-simply-field="code" placeholder="div {...}"></textarea>

componentBodyHtml.html
<textarea data-codemirror-mode="htmlmixed" data-simply-field="code" placeholder="<link rel='stylesheet'..."></textarea>

component-actions/componentTemplates/componentActions.html
<textarea data-codemirror-mode="javascript" data-simply-field="code" placeholder="function() {...}"></textarea>

componentComponentTemplate.html:
<textarea data-codemirror-mode="htmlmixed" data-simply-field="code" placeholder="
Component Html
"></textarea>

componentComponentTemplate.html
<textarea data-codemirror-mode="json" data-simply-field="sampledata" placeholder="{}"></textarea>

componentComponentCss.html
<textarea data-codemirror-mode="css" data-simply-field="code" placeholder="div {...}"></textarea>

What if simply-render gets a transformer-like thing:
<simply render rel="simplycode-editor" data-mode="javascript" data-field="code" data-simply-transformer="editor-render"></simply-render>

and a bit of code to manage it all:
"editor-render" : {
  render : function(element) {
    // Instead of data, this would receive the DOM structure just before it gets inserted into the page
    // 'this' points to the simply-render element, allowing us to grab the attributes from there
   element.setAttribute("data-code-mirror", this.getAttribute("data-mode"));
   element.setAttribute("data-simply-field", this.getAttribute("data-simply-field"));
   return dom;
  },
  extract : function(dom) {
    // unused
  }
}

I think something like this would allow a lot of customization for what we can do with simply-render step, while reusing concepts within the stack that are already familiar?


not working in gnome

Makes the title bar look weird, and turns the background transparent rather than blurred. Tested on fedora - gnome, on both wayland and x11. Back on arch + kde i never encountered this issue.

@t3dium If you look at the implementation, it's using the following command on Linux:
xprop -f _KDE_NET_WM_BLUR_BEHIND_REGION 32c -set _KDE_NET_WM_BLUR_BEHIND_REGION 0 -id <ID>

This will only work for KDE-based window managers, and potentially only for X11. I looked for a way to do something similar in Gnome, but it doesn't look like its compositor supports this feature at the moment.


First defaults build

removed abs.yaml
bumped build number to avoid conflicts with sf* channel

@Arishamays1 if we add the submodule, and then close-and-reopen this PR, the builds should work fine. I don't anticipate build issues

@Arishamays1 if we add the submodule, and then close-and-reopen this PR, the builds should work fine. I don't anticipate build issues

Thanks, Michael! Will do.

Linter check found the following problems:
The following problems have been found:
ERROR: /tmp/abs_b0wdc64n8c/clone/recipe/meta.yaml:30: duplicate_key_in_meta_yaml: The recipe meta.yaml contains a duplicate key
Errors were found

Linter check found the following problems:
The following problems have been found:
ERROR: /tmp/abs_d8d7ab1zcx/clone/recipe/meta.yaml:15: pip_install_args: pip install should be run with --no-deps and --no-build-isolation.
ERROR: /tmp/abs_d8d7ab1zcx/clone/recipe/meta.yaml:32: missing_imports_or_run_test_py: Python packages require imports or a python test file in tests.
WARNING: /tmp/abs_d8d7ab1zcx/clone/recipe/meta.yaml:43: documentation_overspecified: Using doc_url and doc_source_url is overspecified
Errors were found


Avoiding app crash when closing bottom page during checkout

A "Unexpectedly found nil while unwrapping an Optional value" occur on ex line 79 ("let cardType = resultCard!["type"]") when closing the bottom page during the selection between terminal and link. The updated code just check for a nil on resultCard before try to unwrap it.
fix #13

Hi @jacopofranza, thanks for finding the issue  and opening this PR.
I noticed that when the payment bottomsheet is dismissed transactionCode is nil, so we can simply check if it's nil and return immediately. In this way we can avoid all the checks that you added on the dart side and keep the code cleaner.
So I'm closing this PR and  fixing the issue with another commit.
Simone

Still unresolved. Any updates?
sumup/SwiftSumupPlugin.swift:87: Fatal error: Unexpectedly found nil while unwrapping an Optional value


Lag, trigger issue

Utilizing a thrustmaster Ferrari legend edition wheel, the throttle pedal (A6) does not show up under direct input, but an unresponsive or non input A3 does show up; Similar to issue Missing Trigger Detection #32

I used the suggestion from Dinput sliders support #11, I edited the settings text (R2=Axis6,100,0,0) to include mapping A6 to RT which can be seen in above Screenshot. A6 (Throttle pedal) does indeed map to RT, but only updates when a natively XOutput listed direct input is changed. The delay until another input is made is clearly seen under the XInput, or noticed while gaming. No delay until input is detectable in HTML5 Gamepad Tester, XOutput .11, Thrustmaster setup, or games compatible with this wheel. Certainly makes for an exciting driving experience when the throttle is stuck full open until you turn the steering wheel, lol. This may be what Dead Zone Issuses #37 was experiencing as .5 second delay? Oddly, using HTML5 Gamepad tester http://html5gamepad.com/, Axis 5 (throttle A6) maps to B7.

Note: XOutput.11 seemed to recognize all inputs properly, but non mapped analog outputs created other more severe problems.

Trigger/axis detection may not work properly, I will look into that, but it is hard to find out as all my test devices are working properly.
Delay is unnoticeable for me in HTML gamepad tester. If you CPU is utilized for 80-100%, then the  XOutput, running in the background, may have lower chances to run, therefore delay starts to rise. If you have high CPU usage during games, I would recommend increasing the priority of XOutput in task manager, but that may cause lag in games. Thus the XOutput is triggered around 64 fps, but this issue has no real solution (see more).
B6 and B7 are called buttons, but as you can see they have other values than 0 and 1. In most games with XBox controller, B6 is used for brake and B7 is for throttle. I should not be an issue.

I have a Thrustmaster Ferrari Experience GT and I'm experiencing the same problem. Right trigger doesn't work and if I add it manually to the settings it only works while turning the wheel (it's stuck unless the wheel is moving).

If you need to add the setting manually the refresh will not work. The main issue is that the axis (A6) is not recognized.
I do not own the device, so I added extended logging in v3.12. You should send me the a log file. Just start the application and exit is after a few seconds.

Ok, here it is, I hope it's the right one. Thanks for the effort towards fixing this issue :)
XOutput.log

This is the right file, but you have not updated to the latest version yet. Please download the latest release.

I have the very same problem with Thrustmaster Rumble Force (it is almost identhical to the ferrari one)
I spend some money on this thing but can't get it working with any game. Tryed other emulators like x360ce, it recognizes all axis but simply wont work with any game i have. Xoutput on the other hand, works great, except for the accelerator. lol
XOutput.log

This is the right file, but you have not updated to the latest version yet. Please download the latest release.

If you can do anything about this i would be really greatfull.

XOutput.log
here is my log file after replicating the settings change and behavior from OP

The lagging issue should be resolved after the devices are filtered correctly as they are in the latest development release. I have done some updates on the trigger detection. Please try to use it.


ycmd: Fix build on darwin

Description of changes
Excludes all third-party dependency tests from the output. This reduces the size of the output, and in particular removes the file ycmd/third_party/jedi_deps/jedi/test/examples/init_extension_module/__init__.cpython-38-x86_64-linux-gnu.so, fixing the fixupPhase and thus the whole build on drawin.
This in turn fixes the build of vimPlugins.YouCompleteMe.
Additionally, the package was autoformatted with nixpkgs-fmt and migrated to by-name.
Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[x] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[x] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
24.05 Release Notes (or backporting 23.05 and 23.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

Result of nixpkgs-review pr 299596 run on aarch64-darwin 1

2 packages built:

vimPlugins.YouCompleteMe
ycmd


core: make rook version more readable

during the pre-validation check, rook version was
printed in multiple lines with golang version
which was making it difficult to read. Now, it
prints in one single like with the golang version.
fixes:  #117

earlier
Warning: rook version 'rook: v1.11.0-alpha.0.410.g97bf52d76
go: go1.19.7
' is running a pre-release version of Rook.

now
Info: CephCluster namespace: "rook-ceph"
Info: Rook operator namespace: "rook-ceph"
Warning: rook version 'rook: v1.11.0-alpha.0.420.gd9a17691c' is running a pre-release version of Rook.


cargo-make: 0.19.5 -> 0.20.0

Motivation for this change
Update cargo-make to the latest release.
https://github.com/sagiegurari/cargo-make/releases/tag/0.20.0
Note: doCheck is set as false.
Some tests fail because they need network access. However, Travis-CI ensures a proper build.
https://travis-ci.org/sagiegurari/cargo-make/jobs/546375769
https://travis-ci.org/sagiegurari/cargo-make/jobs/546375770
https://travis-ci.org/sagiegurari/cargo-make/jobs/546375771
cargo-make is a subcommand for cargo. You need to invoke cargo-make via cargo command.
To test the binary files in ./result/bin, consider the following commands:
[john@nixos:~/result/bin] PATH=.:$PATH cargo make --version
cargo-make 0.20.0
[john@nixos:~/result/bin] makers --version
makers 0.20.0

Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nix-review --run "nix-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Assured whether relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

@GrahamcOfBorg build cargo-make

Built and tested locally on NixOS and darwin
Thanks!


kernelPatches: ath driver: allow setting regulatory domain

Ports an OpenWRT patch for Atheros wireless drivers (ath*) which allows
the user to change the regulatory domain code to the one which actually
applies.
All Atheros devices have a regulatory domain burned into their EEPROM.
When using a device as AP, this domain is frequently overly restrictive
when compared to the regulation which applies in the country the device
actually operates in; often, this restriction disallows IR on all
channels making it impossible to use the device as an AP at all.
This commit introduces the NixOS config option
networking.wireless.athUserRegulatoryDomain which, if enabled, applies
the patch and sets the kernel config option ATH_USER_REGD.
The original OpenWRT patch targets Linux 5.8.
Tested with a Compex WLE900VX (Qualcomm Atheros QCA986x/988x 802.11ac)
on NixOS master running Linux 5.10.5.

Motivation for this change
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[ ] Fits CONTRIBUTING.md.

This is a semi-automatic executed nixpkgs-review which does not build all packages (e.g. lumo, tensorflow or pytorch)
If you find some bugs or got suggestions for further things to search or run please reach out to SuperSandro2000 on IRC.
Result of nixpkgs-review pr 108725 run on x86_64-linux 1

1 package blacklisted:

tests.nixos-functions.nixos-test

This is a semi-automatic executed nixpkgs-review which does not build all packages (e.g. lumo, tensorflow or pytorch)
If you find some bugs or got suggestions for further things to search or run please reach out to SuperSandro2000 on IRC.
Result of nixpkgs-review pr 108725 run on x86_64-linux 1

1 package blacklisted:

tests.nixos-functions.nixos-test

This is a semi-automatic executed nixpkgs-review which does not build all packages (e.g. lumo, tensorflow or pytorch)
If you find some bugs or got suggestions for further things to search or run please reach out to SuperSandro2000 on IRC.
Result of nixpkgs-review pr 108725 run on x86_64-linux 1
1 package blacklisted:

I'm not sure what this output means for this PR. Please elaborate.

This is a semi-automatic executed nixpkgs-review which does not build all packages (e.g. lumo, tensorflow or pytorch)
If you find some bugs or got suggestions for further things to search or run please reach out to SuperSandro2000 on IRC.
Result of nixpkgs-review pr 108725 run on x86_64-linux 1
1 package blacklisted:

I'm not sure what this output means for this PR. Please elaborate.

I wonder if adding an option is the right thing to do. pkgs already contains a number of kernel patches as packages. It looks like it's possible to create such a package and instruct the user in meta.longDescription to add it to boot.kernelPatch.
I have no strong opinion on the question, I'm just raising the idea.

I wonder if adding an option is the right thing to do. pkgs already contains a number of kernel patches as packages. It looks like it's possible to create such a package and instruct the user in meta.longDescription to add it to boot.kernelPatch.
I have no strong opinion on the question, I'm just raising the idea.

I wonder if adding an option is the right thing to do. pkgs already contains a number of kernel patches as packages. It looks like it's possible to create such a package and instruct the user in meta.longDescription to add it to boot.kernelPatch.
I have no strong opinion on the question, I'm just raising the idea.

Thanks for your comment! Actually, I was just wondering what's the most straight-forward way to enable this patch from a user's perspective. I see your point though. Do you have an example of a package that follows your proposal?

I wonder if adding an option is the right thing to do. pkgs already contains a number of kernel patches as packages. It looks like it's possible to create such a package and instruct the user in meta.longDescription to add it to boot.kernelPatch.
I have no strong opinion on the question, I'm just raising the idea.

Thanks for your comment! Actually, I was just wondering what's the most straight-forward way to enable this patch from a user's perspective. I see your point though. Do you have an example of a package that follows your proposal?

They are in the kernelPatches. However you would have to add recurseIntoAttrs on this attribute to make the patches visible in the package search.

They are in the kernelPatches. However you would have to add recurseIntoAttrs on this attribute to make the patches visible in the package search.

In fact, the patch of this PR is already added to the kernelPatches attribute. I'm happy to adapt this PR to expose those kernel patches in the package search, if this is what the community wants.

In fact, the patch of this PR is already added to the kernelPatches attribute. I'm happy to adapt this PR to expose those kernel patches in the package search, if this is what the community wants.

I'm not sure what this output means for this PR. Please elaborate.

nixpkgs-review does not build tests.

I'm not sure what this output means for this PR. Please elaborate.

nixpkgs-review does not build tests.

I wonder if adding an option is the right thing to do. pkgs already contains a number of kernel patches as packages. It looks like it's possible to create such a package and instruct the user in meta.longDescription to add it to boot.kernelPatch.

After some thought, it will probably not work because a patch is not a derivation and will not be listed in the package search. So let's forget about this.

A vm built with
{ config, pkgs, lib, ...}: {
  config = {
    users.users.root.initialPassword = "root";
    console = {
      font = "Lat2-Terminus16";
      keyMap = "fr";
    };
    boot.kernelParams = [ "systemd.log_level=debug" ];
    networking.wireless.athUserRegulatoryDomain =true;
    boot.kernelPackages = pkgs.linuxPackages_latest;
  };
}

compiles and boots, so it looks good to me.
cc @NeQuissimus for a second, more informed, opinion.
If noone complains I'll merge next week or the week after.

I wonder if adding an option is the right thing to do. pkgs already contains a number of kernel patches as packages. It looks like it's possible to create such a package and instruct the user in meta.longDescription to add it to boot.kernelPatch.

After some thought, it will probably not work because a patch is not a derivation and will not be listed in the package search. So let's forget about this.

A vm built with
{ config, pkgs, lib, ...}: {
  config = {
    users.users.root.initialPassword = "root";
    console = {
      font = "Lat2-Terminus16";
      keyMap = "fr";
    };
    boot.kernelParams = [ "systemd.log_level=debug" ];
    networking.wireless.athUserRegulatoryDomain =true;
    boot.kernelPackages = pkgs.linuxPackages_latest;
  };
}

compiles and boots, so it looks good to me.
cc @NeQuissimus for a second, more informed, opinion.
If noone complains I'll merge next week or the week after.

One thing that is going to be tricky here is that sometimes kernel patches break with minor versions, sometimes with patch level releases.
So when you say this patch needs at least 5.8, I hope we can keep up with maintaining this patch :D
What if it continues to work with 5.8.x or 5.9.x (EOL'd, so no more updates here) but not an upcoming 5.10.x ?

One thing that is going to be tricky here is that sometimes kernel patches break with minor versions, sometimes with patch level releases.
So when you say this patch needs at least 5.8, I hope we can keep up with maintaining this patch :D
What if it continues to work with 5.8.x or 5.9.x (EOL'd, so no more updates here) but not an upcoming 5.10.x ?

Good point! Actually, this patch has been part of OpenWRT long before 5.8 and I'd assume it also works for versions <5.8. I just introduced the "at least 5.8" requirement as this is the kernel version of OpenWRT for the commit the patch relates to and I didn't test any version before. I didn't consider it's worth it for the reasons you mentioned.
Regarding the compatibility with 5.10.x: No worries, it works as a charm so far :)

Tested with a Compex WLE900VX (Qualcomm Atheros QCA986x/988x 802.11ac) on NixOS master running Linux 5.10.5.

I depend on this patch (my wifi router runs NixOS). Therefore, I can commit to maintain this patch (best-effort, of course).

Good point! Actually, this patch has been part of OpenWRT long before 5.8 and I'd assume it also works for versions <5.8. I just introduced the "at least 5.8" requirement as this is the kernel version of OpenWRT for the commit the patch relates to and I didn't test any version before. I didn't consider it's worth it for the reasons you mentioned.
Regarding the compatibility with 5.10.x: No worries, it works as a charm so far :)

Tested with a Compex WLE900VX (Qualcomm Atheros QCA986x/988x 802.11ac) on NixOS master running Linux 5.10.5.

I depend on this patch (my wifi router runs NixOS). Therefore, I can commit to maintain this patch (best-effort, of course).

Then I shall have no objections :D
I assume there is no way to write a test here without actual hardware...

Then I shall have no objections :D
I assume there is no way to write a test here without actual hardware...

The best test I can think of is compiling the latest kernel with this patch applied, boot it, and execute zcat /proc/config.gz | grep -q CONFIG_ATH_USER_REGD=y

The best test I can think of is compiling the latest kernel with this patch applied, boot it, and execute zcat /proc/config.gz | grep -q CONFIG_ATH_USER_REGD=y

The patch is really short in fact, and only makes some functions return true. A conflict is not impossible but I this this explains that "this patch has been part of OpenWRT long before 5.8".

The patch is really short in fact, and only makes some functions return true. A conflict is not impossible but I this this explains that "this patch has been part of OpenWRT long before 5.8".

@veehaitch just wanted to say thank you for pulling in this patch. I spent about a week trying to track down why the ath10k card in a router I'm setting up wouldn't allow an AP on 5GHz despite setting the regdomain. I was about to try making my own patch and then saw you already got to it. This made the difference between getting 50-60mb/s on the 2.4GHz band to 700mb/s on 5GHz.


[Bug]: Model serving image must be in sha format for disconnected installation

Is there an existing issue for this?

[X] I have searched the existing issues

Current Behavior
For disconnected installation, all the images to pull must be addressed in sha index format, having a tagged image will result in a deployment failure.
Expected Behavior
Having the image for model serving with an sha image.

Extremely valuable change and a great step toward making ODH airgapped-compatible


Deploy the app

User Stories

As a user, I want to be able to visit the app on a public URL

completed


throw readable error if passing endpoint and keyspace as a string to db()

An error I ran into the other day while getting set up with this project: if you do client.db(endpoint, namespace) instead of client.db(endpoint, { namespace }) you get some unreadable dns errors. This PR adds better handling for that case.

@toptobes what do you think of the new error message? Unexpected db() argument: database id can\'t start with "https://". Did you mean to call .db(endpoint, { namespace })?


MT4 not publishing data

Hi, i have followed your setup instructions for installing the MT4 EA, however when i start it i am not seeing any publish data in the expert tab at the bottom, does this mean it is not publishing the data correctly?

Did you change publish data from false to true?

Did you change publish data from false to true?

Yes, i did

Then check and make sure you have the right files in the include and library section. It worked out of the box for me

I have checked the files, the only thing i can think is that i am using this on a mac, so am using it through wine

Hi @alhennessey92 ,
This project has been built and tested in a Windows 10 environment.
We haven’t tested on MacOS and are unfortunately unable to provide support at the present time.
But stay tuned - we’ll raise this internally and see if we can add additional operating systems into our test pipeline.
Many thanks for your interest!


idf.py menuconfig blink then exit  (IDFGH-5005)

I'm trying to configure my crystal to 26 MHz from the default 40 MHz using idf.py. When i hit enter, the table appear for about 1 sec, then exit. here's a picture of that:

@someRandomNetizen Please give more information about your system (ESP-IDF version, Vscode plugin version) and steps you are doing (where are you trying to open menuconfig, eg. which terminal, or built-in vscode menuconfig?).

Sorry, my bad, kinda moody back then. Let me edit that real quick

i'm trying to flash my project with P32 chip, first, the terminal said it couldn't find idf.py, so i add it to the invironment variable, then this happen.

I think that if it wasn't available then the Vscode setup wasn't successful or complete. Please follow the guide here for setting up the vscode plugin.
What is the P32 chip? Do you mean ESP32?

@dobairoland yeah, it's ESP32. and thanks buddy, my problem's solved, well not really. Techinically i stil haven't been able to do the idf.py menuconfig yet. But i figure s.t else.
for anyone of you who have the same problem:
f1 -> esp-idf: sdk configuration editor -> esp specific -> change the box below main XTAL frequency to autodectect. that should do it

@someRandomNetizen Are you able to run idf.py --version or idf.py build?
The "sdk configuration editor" is able to edit the configs and achieve the same outcome as idf.py menuconfig.

I think the issue has been solved and I'm closing this for lack of activity.


[C++]: Publication class destructor terminates the whole process when MediaDriver is inactive

In C++ client application I am trying to recover from the MediaDriver shutdown situation. I've looked at the advise given in #274 and my code attempts to clean its publication and Aeron instances. But destructor of aeron::Publication class throws an aeron::DriverTimeoutException which leads to the immediate termination of the process.
Is there a way to handle the MediaDriver shutdown situation without the process termination happening?

what about catching the exception?

Exceptions in destructors automatically abort the program. (Per spec.)

It is impossible to catch the exception since user-defined destructors in C++11 are noexcept(true) by default. The program aborts immediately.

I think I have a way to handle this a little cleaner. Will self-assign and look when I can.

Should not throw now. Instead calls the error handler. So, should be fine.


Impeller crashes iOS app with Bad Memory Access when using camera with overlay

Steps to reproduce

I extracted a reproducer.
add ios platform
add <key>NSCameraUsageDescription</key><string>This app needs camera access to  scan QR codes</string> to ios/Runner/Info.plist
When running tap on the qr code:

reproducer.zip
if I disable impeller the app shows the camera
Expected results
Should not crash
Actual results

Code sample
reproducer.zip
Screenshots or Video

Logs
No response
Flutter Doctor output
Doctor output
[✓] Flutter (Channel stable, 3.22.2, on macOS 14.5 23F79 darwin-arm64, locale de-DE)
[!] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
    ✗ cmdline-tools component is missing
      Run `path/to/sdkmanager --install "cmdline-tools;latest"`
      See https://developer.android.com/studio/command-line for more details.
    ✗ Android license status unknown.
      Run `flutter doctor --android-licenses` to accept the SDK licenses.
      See https://flutter.dev/docs/get-started/install/macos#android-setup for more details.
[✓] Xcode - develop for iOS and macOS (Xcode 15.4)
[✓] Chrome - develop for the web
[✓] Android Studio (version 2023.2)
[✓] IntelliJ IDEA Community Edition (version 2024.1.4)
[✓] Connected device (6 available)
    ! Error: Browsing on the local area network for mbAppleWatch4. Ensure the device is unlocked and discoverable via Bluetooth. (code -27)
[✓] Network resources

Hi @konsultaner, a hotfix was recently released (3.22.3). I just tested your code sample and when I tapped the button, it did not crash. Can you upgrade and check if you still experience this issue?

updating to 3.22.3 works!