Incorrect result for surface integration in 1d

Hello,
Thank you for the very nice package. I was writing a package extension in AutoBZCore.jl and I noticed that 1d surface integration below doesn't return the correct result.
Since in AutoBZCore.jl I was using the package to compute DOS of simple tight-binding models, I'll take the example $\int_0^1 dk \delta(E-cos(2\pi k)) = 1/\pi\sqrt{1-E^2}$ for $|E|<1$ and zero otherwise.
julia> using ImplicitIntegration

julia> function dos_integer_1d_exact(E::Real, t=oneunit(E))
           x = abs(E/2t)
           if x <= 1
               1/sqrt(1 - x^2)/(pi*2t)
           else
               zero(inv(oneunit(t)))
           end
       end
dos_integer_1d_exact (generic function with 2 methods)

julia> ω = 0.1
0.1

julia> dos_integer_1d_exact(ω, 0.5)
0.31991347258556546

julia> result = integrate(x -> 1/sqrt(sinpi(2x[1])^2), x -> cospi(2x[1]) - ω, (0.0,), (1.0,); surface = true, tol=1e-2)
(val = 0.0, logger = LogInfo:
|- Subdivisions:
|-- Dimension 1: 0 subdivisions
)

Here the solution is incorrectly returned as zero. However, the package works brilliantly for higher dimensions, e.g. in 2d
julia> using Elliptic

julia> function dos_integer_2d_exact(E::Real, t=oneunit(E))
           x = abs(E/4t)
           if x <= 1
               # note Elliptic and SpecialFunctions accept the elliptic modulus m = k^2
               1/(pi^2*2t)*Elliptic.K(1 - x^2)
           else
               zero(inv(oneunit(t)))
           end
       end
dos_integer_2d_exact (generic function with 2 methods)

julia> dos_integer_2d_exact(ω, 0.5)
0.4442065815373786

julia> result = integrate(x -> 1/sqrt(sinpi(2x[1])^2+sinpi(2x[2])^2)/2pi, x -> cospi(2x[1]) + cospi(2x[2]) - 0.1, (0.0,0.0), (1.0,1.0); surface = true, tol=1e-2)
(val = 0.444207969139339, logger = LogInfo:
|- Subdivisions:
|-- Dimension 1: 32 subdivisions
|-- Dimension 2: 47 subdivisions
)

I know the novelty of this package is in the higher-dimensional methods, but if getting the one-dimensional case to work is possible I think that would round out the package very nicely. Thanks.

Great. I tagged v0.1.1 with the fix.


[Suggestion] Add Compatibility with the ItemMacro module even when WIRE is not installed

Currently, there is an issue with the Action Pack module and the ItemMacro module that, when WIRE is not installed, the item macro on an item gets never called, even with all the hooks and settings in the ItemMacro module enabled.
Rolling the item via the sheet runs the macro, which is the intended behavior. But if you roll the same item via the Action Pack then the macro is simply ignored. It would be great if this could be changed so that the ItemMacro is run instead if a specific setting is turned on and WIRE not installed since your Action Pack is great, even for low to no automation games that do not use WIRE.

This would be a great addition. My players prefer the look and feel of this to the current HuD we're using but I'm not ready to switch fully over due to this itemmacro issue.

I would also like to see compatibility added for ItemMacro, but in the meantime I made a janky workaround that solves the problem until a more robust implementation can be developed. If you're interested, you can find the download manifest here: https://github.com/narbis/foundry-action-pack/releases/latest/download/module.json


feat: resolve PR comments

Implement uin32Log2 with clz
Add HTIF_YIELDED_REASON to EmulatorConstants.sol
Update comments

@mpernambuco I'd like to merge this PR, is there anything you want to add?


17.03 Updates

17.03 is out!
17.03 introduces changes in the kernel configuration machinery, so I'm proposing that we maintain a pre-17.03 branch for users who wish to stay on 16.09 or earlier.  I'd probably continue to focus my maintenance efforts on master but would gladly accept PRs against the pre-17.03 branch from people who wanted to keep things current for earlier versions.
Does this sound good?
cc @magnetophon @erlandsona @tg-x @pngwjpgh @peterhoeg
(or anyone else who might have a horse in this race)
Ref: #39

Sounds good to me!
Thanks for keeping this up!


Add PuLID - ID Customisation

PuLID: Pure and Lightning ID Customization via Contrastive Alignment

code - https://github.com/zsxkib/PuLID

does diffusers have this ? if not its worth looking into this
https://github.com/ToTheBeginning/PuLID

this one works with flux, it will be gamechanger for faceid


Changing appsody docs for new stack create behaviour

Is your feature request related to a problem? Please describe.
In reference to appsody pr 856
Describe the solution you'd like
Talk about the new possibilities with stack create:

Able to include custom repos in appsody stack create --copy command, (not just stacks that show up in appsody list)
Stack package now creates a tar archive file of the source code of the stack

Additional context
To be included in this weeks release on weds/thurs

I think we never explicitly mentioned that the stack create --copy command only works for appsody/appsody stacks. Did we? If we did then we need to address that and take that restriction off.
We should also update any place where we list out what stack package creates/generates.

Closed with PR: #501


all: remove picker usage

Also, renamed picker package to remotes. There is still one picker for
controlapi, I'm going to rewrite it.
I sorta went mad with renaming and it was too late to stop, so commit is mess :(

closes #875 in a roundabout way, if you remove the last picker from controlapi.
don't have to replace picker with balancer if there is no picker to replace.

Current coverage is 55.42% (diff: 73.07%)

No coverage report found for master at 6890aff.

Powered by Codecov. Last update 6890aff...3f44926

@aaronlehmann updated! thanks!

What happened to balancer? I really was hoping that we would get rid of the Remotes interface, as it is not very good.

I really was hoping that we would get rid of the Remotes interface, as it is not very good.

Let me clarify this: it was designed to work with grpc.Picker and add it all over the codebase means we'll have to replace it with something better.

@stevvooe https://github.com/docker/swarmkit/issues/875#issuecomment-241074074

Meant to post this before while I was doing my first pass, never clicked the button:

Hey, renaming is good.

This is a big simplification. +86 −242 LOC.

@stevvooe You're right. I've added backoff limit back.

LGTM


Problem with testing

Can this model be tested without training? Like giving an image and receive a describing statement as output. If so, what is the procedure to test the model. It would be helpful if I can get some steps to test it.
ps:
Error which I get when I run evaluate.ipynb code is, there is no "./data/val/val.features.hkl" file available.

I think you need to call test() (which is in solver.py) in train.py with the reference of solver object .....from solver.py....

@zBabar  were you able to successfully run the model? I am getting a memory error while trying to train the model. Any idea how to solve that?

@zBabar were you able to successfully run the model? I am getting a memory error while trying to train the model. Any idea how to solve that?

How the memory error looks like? MMO?


Improve documentation on creating a service account for CI/CD

We get questions on how to create a service account for CI/CD. Please improve the documentation here, based on feedback received from our customers: https://compliantkubernetes.io/user-guide/ci-cd/

Related https://github.com/elastisys/compliantkubernetes-apps/issues/461

I think this is done in the current version of https://elastisys.io/compliantkubernetes/user-guide/ci-cd/
Please close if you feel like it is enough.


Sync upstream/master

Merges in kstenerud/KSCrash at master (https://github.com/kstenerud/KSCrash/commit/992a1c6ac06725ba3357b0ce44f89cb5a3c2c0a2)

Wow! Thank you very much for responding to the call and making this huge commitment. I really appreciate your effort. I hope you didn't have any trouble merging it with the new project structure. Let's run some PR checks and take a look.

opened this PR in the wrong direction somehow

oh


Kibana Visualization error "[esaggs] > Bad Request"

Hello,
thank you for updating the pfelk-repo!
I just tried it out, following the steps here and here but ended up with an empty dashboard with an error mark at each visualization saying:
"[esaggs] > Bad Request"
Only the vis. Firewall - Discover is working.
I can confirm that data is coming in and under "discover" in Kibana I can see a long list of fields and parsed events.

@massaquah - To confirm, you conducted a clean/new install or update?  I just fired up a fresh instance imported the templates and dashboard without issue. I've seen this error when conflicting data was already stored and resolved by deleting and reloading the saved objects.
I would suggest the following:

[ ] Confirm indices are loaded (see image below)
[ ] Delete all Kibana saved objects
[ ] Delete all indices
[ ] import saved objects (kibana)

I can confirm that I did a clean install.
I just tried it again

stopping all containers
doing a "docker system prune --all --volumes"
removing the pfelk directory where I unzipped pfelkdocker.zip

then

pulling and bringing up the fresh containers
importing the templates
importing the dashboards
BAM

Now I get another error at this point:

Just to confirm that index templates have been imported correctly:

The Dashboard version from 4 days ago can be imported without any error.

I had a deeper look into one of the visualizations and found this error. Maybe that helps?
{   "request": {},   "response": {},   "body": {     "statusCode": 400,     "error": "Bad Request",     "message": "[status_exception] error while executing search",     "attributes": {       "error": {         "type": "status_exception",         "reason": "error while executing search",         "caused_by": {           "type": "search_phase_execution_exception",           "reason": "all shards failed",           "phase": "query",           "grouped": true,           "failed_shards": [             {               "shard": 0,               "index": "pfelk-firewall-2020.10.22",               "node": "A8LR5j6ZTei7GhLVd1egug",               "reason": {                 "type": "illegal_argument_exception",                 "reason": "Text fields are not optimised for operations that require per-document field data like aggregations and sorting, so these operations are disabled by default. Please use a keyword field instead. Alternatively, set fielddata=true on [destination.geo.country_name] in order to load field data by uninverting the inverted index. Note that this can use significant memory."               }             }           ],           "caused_by": {             "type": "illegal_argument_exception",             "reason": "Text fields are not optimised for operations that require per-document field data like aggregations and sorting, so these operations are disabled by default. Please use a keyword field instead. Alternatively, set fielddata=true on [destination.geo.country_name] in order to load field data by uninverting the inverted index. Note that this can use significant memory.",             "caused_by": {               "type": "illegal_argument_exception",               "reason": "Text fields are not optimised for operations that require per-document field data like aggregations and sorting, so these operations are disabled by default. Please use a keyword field instead. Alternatively, set fielddata=true on [destination.geo.country_name] in order to load field data by uninverting the inverted index. Note that this can use significant memory."             }           }         }       }     }   },   "name": "Error",   "req": {},   "res": {} }

@massaquah - I went through an installed per the GitHub instructions and posted a quick overview view here.
I made some minor tweaks within the repo, to align with elastic.co and posted those updates which were utilized in the quick install tutorial video.
I only had an issue/error with the snort dashboard...all other objects imported without issue.  I'll look into the snort object but suspect the defined fields within the snort ndjson file are conflicting with others.
I am running OPNsense and logging everything to pfELK.  I am not using BEATS, Snort, or HAProxy.
Curious as to what the specific issue.  Please provide insight into which saved objects you are importing.

@a3ilson , thank you for the video. I did a clean install again and cautiously followed the video only to realize that my previous attempts followed the exact same steps.
Again, I ended up with an empty dashboard and the error "[esaggs] > Bad Request" in each box.
Then I investigated a little more and observed a potential mismatch between the index template and the actual index:
Template (pfelk-firewall) for field event.action:
"event": {
          "type": "object",
          "properties": {
            "reason": {
              "type": "keyword"
            },
            "action": {
              "type": "keyword"
            }
          }
        },

And then the index that was created after sending events from OPNsense to pfelk:
"event": {
          "properties": {
            "action": {
              "type": "text",
              "fields": {
                "keyword": {
                  "type": "keyword",
                  "ignore_above": 256
                }
              }
            },

Why do I end up with type "text"? :(((

I found the same issue here:
https://github.com/wazuh/wazuh-kibana-app/issues/2420#issuecomment-672624914
and the solution here:
https://github.com/wazuh/wazuh-kibana-app/issues/2420#issuecomment-673276101
So I just stopped OPNsense output, deleted the index and restarted the output. Now dashboard looks fine.

@massaquah - 👍
I should have been more explicit with my initial response.  If the logs are being sent prior to the importing of the templates, the field types will not be properly identified resulting in the described error.
However, I'm glad you were able to solve and will close this issue - thanks!


Dead Link "Microsoft Teams Rooms Licensing"

https://github.com/MicrosoftDocs/OfficeDocs-SkypeForBusiness/issues/2699

this fix is incorrect, will fix this morning in a separate PR

https://github.com/MicrosoftDocs/OfficeDocs-SkypeForBusiness-pr/pull/3285 fixes


fix/Replace nbqa-ruff with ruff

Description

I have changed .pre-commit-config.yaml file and added  ruff.toml for lint the jupyter notebook.

Fixes # (issue)

This PR fix this issue : https://github.com/pybamm-team/PyBaMM/issues/3476

Type of change

[ ] New feature (non-breaking change which adds functionality)
[x] Optimization (back-end change that speeds up the code)
[ ] Bug fix (non-breaking change which fixes an issue)

Key checklist:

[x] No style issues: $ pre-commit run (or $ nox -s pre-commit) (see CONTRIBUTING.md for how to set this up to run automatically when committing locally, in just two lines of code)
[ ] All tests pass: $ python run-tests.py --all (or $ nox -s tests)
[ ] The documentation builds: $ python run-tests.py --doctest (or $ nox -s doctests)

You can run integration tests, unit tests, and doctests together at once, using $ python run-tests.py --quick (or $ nox -s quick).
Further checks:

[ ] Code is commented, particularly in hard-to-understand areas
[ ] Tests added that prove fix is effective or that feature works

We should specifically use ruff.toml (docs) instead of pyproject.toml for now, since PyBaMM is not configured to support the pyproject.toml build format yet

Can you please review it again?

Note: this PR (like the earlier one as @Saransh-cpp had mentioned) is also from the develop branch of your fork, which is not recommended and would cause issues should you wish to contribute further with subsequent PRs

Note: this PR (like the earlier one as @Saransh-cpp had mentioned) is also from the develop branch of your fork, which is not recommended and would cause issues should you wish to contribute further with subsequent PRs

so do you want that i make PR from new branch? and close this one.

Yes. You can cherry-pick the commits that are already here so that you don't lose any progress

Closing since #3483 has been opened


Refactored the submission workflow to be on 8 routes instead of 1

PASS was initially written with the entire submission workflow on one route, submissions/new. Having the entire workflow on a single route meant that each tab does not have it's own route/controller layer for loading and processing data specific to the tab.  As the application becomes more complicated and data intensive, the submissions/new controller shared by 7 tabs is getting very large, making changes difficult to implement. To address this, the following changes were made. They had to be done together to preserve the functionality of PASS:
Route changes
This change is focused on improving the route structure. It splits the single new route into 8:

A parent submissions/new route. Minimal changes have been made to the parent route/controller with the emphasis in this first PR on preserving functionality. All submission workflows begin by visiting this route. It initializes the submission, resetting all properties.
A route for each tab in the workflow, 7 in total e.g. submissions/new/basics. All that the route objects for these do at the moment is set the step number property for the tab display. Each route has a controller associated. All that the controller contains at the moment is instructions for the loadNext/loadPrevious action and computed properties to preserve interactions between the child route and the original new route. Some thought should be given to making these more dynamic in the future to support situations where the tabs might vary for different kinds of submissions - for now they are hardcoded. Eventually, the routes and controllers can be refactored to contain relevant tab-specific model, processing, and validation. For now they are there to proved the framework for future improvements.

Workflow service
To simplify this restructuring, a new workflow service has been created to hold properties that used to exist in the workflow-wrapper. When there was one route the workflow-wrapper component loaded the relevant tab component through a series of {{if}} statements in its template, and could be used to pass data into all components. With 7 routes, the information does not persist on each tab so it is no longer viable for storing workflow properties.
The workflow service is a bunch of setters and getters that replace the job that the workflow-wrapper used to do. We can either continue with this approach if it seems beneficial, or add properties to the parent controller - this will be addressed (or not if it is viable as is) in a future change.
Component layout
Where possible, I have preserved the component names to make it easier to see the changes in the files. I have stripped out the WorkflowComponent logic that automated some of the tab logic.
As mentioned, the workflow-wrapper component used to load the tab UI components using {{if}} in the template. Now the workflow-wrapper just deals with the visual wrapper (submission-nav and comments display). Instead, the default template for each of the new tab routes initiates the template/component that has the display logic. There may be a way to do away with a layer of components, but this was the simplest approach for preserving as much code as possible in this first PR.
Remove grants query from new route model
While refactoring it became clear that the grants query in submissions/new route's model wasn't being used. I deleted it to get rid of the code redundancy, besides which, now that the grants tab has it's own route, it could be part of the grant route model.
Add isProxySubmission to Submission model
The submissions/new route has a property called hasProxy.  This should be migrated to a computed property on the Submission model, but due to the way submitterEmail and submitterName are currently being managed in the workflow it will be implemented on a separate PR. For now, this was added to the model for use by the workflow-wrapper, otherwise there would have been a lot of code to pass this into every instance of workflow-wrapper.
Broken tests
Note that tests have not been updated to reflect the new model since extensive refactoring is to take place over the coming weeks and will require them to be rewritten. Default tests were created for new routes, controllers, and components.

Looks good. Very impressive work. I think this results in some good simplification.
I am not a fan of storing application state in a service and think it should generally be avoided. Instead the parent route (new)  and its controller could be used. But either case would be a huge improvement!
Perhaps some of the hasProxy calculation stuff might belong in the workflow service? It is hard to untangle. I like having it on the submission model as much as possible.

Thanks!
Indeed, I was not at all sure about the workflow service approach, but I did this to make it easier to take workflow-wrapper out of the picture. I think doiInfo could go on doi service, some things can be moved to the submission model as computed properties, and then it might be easier to get rid of it.
hasProxy - I plan to move to the Submission model (I actually added it as isProxySubmission) - I needed a few of the properties in submissions/new to calculate it so couldn't move it without code disruption, my next PR will be to make that so!

@emetsger I would like to do a bit more research on it now that I have a better vocabulary for ember and have a chance of doing a meaningful search. The workflow service was a convenient band-aid, and I will spend the next week reducing the need for it. Right now it's a mix of stuff, but I want to narrow it to hold UI state relevant for the duration of the workflow but not reflected in the submission model e.g. radio button status, tab state etc. We can see what's left then maybe.
The problem of parent controller properties going down to child components is simply that you have lots of code purely for passing things up and down the tree... but I may be able to find a less burdensome way to do it. I'd thought about a model for non-persisted data, but have no idea if that's an appropriate use of the Ember model.
In principle it seems right that properties should be passed into the components from outside, making it easier to test, regardless, I will probably move workflow service interaction up the tree and lighten the component.

Merging this to a refactoring branch


ast is being modified by hoist

Is there a way to avoid ast modification? Because my code runs pretty slow because of multiple acorn.parse, so I created a single ast by running acorn.parse one time and run the same ast multiple times. That's what I do in JS-Interpreter and is pretty viable as ast is not modified in any way, but keeping all the state in a different object (which I delete or recycle, depending on situations).
I like this interpreter a lot, but I'm having problems implementing it as it always need a new ast, which I create with another acorn.parse, because the ast is modified while running, so here "ast caching" is not viable. This makes this interpreter way way slower than JS-Interpreter (actually sval is way faster when interpreting the JS (about 8 times), but globally is slower if you do a lot of runs with the same code).

I thought into cloning the ast object and hoisting/running after that, but cloning such an object each time is also pretty slow.
I'm thinking on another thing now. hoist will simply return a new object instead of modifying the ast. If it has to modify the ast in any way, it has just to create a new item, modify it and return it, and if not, just return the item as-is. This way each hoist call can be converted to ast = hoist(ast, this.scope); and still be pretty fast without modifying the entire code.

Yes, sval will modify ast when hoisting, but just move the function declarations to the top of the scope.
After finish compile_ir branch, I will expose APIs for caching the bytecodes. Then you can just parse the code once, get the bytecodes, and run the bytecodes multiple times, like:
const interpreter = new Sval
const bytecodes = interpreter.compile('...')
interpreter.run(bytecodes) // this will skip parsing

Fine, what I did right now is adding 2 methods to Sval:
Sval.prototype.getAST = function (code) {
    var ast = acorn.parse(code, this.options);
    return ast;
};
Sval.prototype.runAST = function (ast, scope) {
    hoist$1(ast, scope || this.scope);
    return evaluate(ast, scope || this.scope);
};

Then I just use them like this:
let sval = new Sval();
let Scope = sval.scope.constructor; // Hack si I can create scopes on-the-fly depending on context

/* at some point */
var scope = new Scope();
sval.runAST(ast, scope);

The scope hack is to run the same ast code in different contexts.
With this exact code running on both JS-Interpreter and Sval, I still see Sval running at half speed when running about 50 thousand repeats (creating new scope and such). I guess that is because on each run a new hoist is made, apart from running the ast. I'm gonna wait for the new branch being finished to continue tests as maybe has more performance improvements at this point.

Hi @Siubaak!
I think that runAST suggested by @Llorx  is a nice feature. In my case, I already have AST and do not want to transform it info string before evaluation. Any chance to have runAST function in the lib?

@jifeon Add support for executing Estree Spec AST by run since version 0.4.7

That's amazing! Thank you!
I have one related question: in my project I have a case where I need to evaluate just part of ast and get result of it. run accepts Program (hoist requires it at least) and can provide output only via export. Probably you can give me an advice how can I evaluate part of code and get latest values from the stack?
Currently for MVP I used very hacked solution:
const result = sval.runAST(node).state.shift();

where runAST skips hoist. In near future I will need to rewrite it into more robust solution, so if you can give an advice it would be awesome.


Hide Connected Services node in Solution Explorer

Python projects are displaying the Connected Services node, but currently we have no support for it.
It also appears that the "Add Connected Service" command is non-functional. We should hide these.

To clarify - only web projects. Presumably it's matching a capability coming from the ASP.NET project we flavor.


The subscriptions-transport-ws package is no longer maintained

Not a show stopper, just a warning
warning altair-fastify-plugin > altair-static > altair-graphql-core ><EMAIL_ADDRESS>The subscriptions-transport-ws package is no longer maintained. We recommend you use graphql-ws instead. For help migrating Apollo software to graphql-ws, see https://www.apollographql.com/docs/apollo-server/data/subscriptions/#switching-from-subscriptions-transport-ws    For general help using graphql-ws, see https://github.com/enisdenjo/graphql-ws/blob/master/README.md
Like your client,
cheers,

Yeah this will be in the next version.

Thank you so much
On 29 May 2022, at 01:06, Samuel @.***> wrote:

Yeah this will be in the next version.
—
Reply to this email directly, view it on GitHubhttps://github.com/altair-graphql/altair/issues/1909#issuecomment-1140329725, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AAAMW5INGESTEWCGEDJKETDVMKDGHANCNFSM5WV6RPVA.
You are receiving this because you authored the thread.Message ID: @.***>

Oh sorry thought this was related to something else that was already fixed. This will be available in the next next 😅 (not 4.4.2) version.

Looking at subscriptions-transport-ws, the authors have placed a deprecation notice with this message so all installs that reference this dependency would have this error message. Considering Altair app itself requires this package to support older use cases, the only solution would be to split up altair core package to a package that contains only configuration (which is why altair-static depends on it) and the rest (still core).

it is, thank you


Game lacks colorblind-friendly color scheme

For colorblind people, the interface of this game is difficult to navigate due to the color scheme. Same problem that Wodle has by default, except they have a colorblind friendly mode. I think their approach also has a problem though because by not having the default mode be colorblind-friendly, anybody who is colorblind cannot read the results that everybody else posts unless those people also turned their settings to be colorblind friendly. To that end I think that the game should have a colorblind friendly color scheme as the default.

Thanks for the suggestion! I agree that the current colour scheme for Bytle lacks the sufficient colour contrast for colourblind users to discern between cells that are either correct or almost correct. This is definitely something that is needed to make Hexle playable for many who are colourblind.
As much as I agree that making the game colourblind-friendly as default would be more beneficial to colourblind users as a whole (especially with sharing), it could be confusing to users who don't use the colourblind-friendly mode and who are used to the default colour scheme for Wordle.
One approach I can immediately think of is to use the default colour scheme for Hexle, but incorporate a background pattern or icon to make it easier to determine the status of a cell — much like how MDN's browser support tables put an × behind the cells of their browser support table where browsers don't support a feature.
Sharing wise, again, switching out the cell emojis could be interesting (though I'm sure users would understand that if the bottom cells are the same colour, then that means that that colour means 'correct') — it would be great if the designers of emoji on various platforms made it easier to understand what colour a square emoji is! One alternative I can think of is to add a hyperlink into the textual content of the shared results that'll open up the Hexle game and fill in the results of the shared game (we'd need to hide the actual cell values, though!).
What's your thoughts? It's a bit of a compromise, but I feel that it should be a good solution that will make the game playable for colourblind users whilst not making the game look too different than the original Wordle game to those who are not colourblind.

Colourblind simulation tests:

Protanopia: hard to discern between green and yellow (both appear brown-yellow)
Deuteranopia: hard to discern between green and yellow (both appear brown-yellow)
Tritanopia: green and yellow can be discernible (yellow appears pink, green appears dark turquoise)

Okay, so I've done the following on the cb-friendly branch:

Added a button to toggle between default and colourblind-friendly colour schemes
Add a link into the text that's copied when sharing a game which lets players see the result in the game itself (see screenshot below) so that users can see the game in their preferred colour scheme (stored in localStorage)

If the user has set their colour scheme to be default and shares their game:

#Hexle 0005 4/6
🟩⬜⬜⬜
🟩🟨🟨🟨
🟩🟨🟩🟨
🟩🟩🟩🟩
http://jamesl.me/hexle?game=1bcb06f&n=5

If the user has set the colour scheme to be colourblind-friendly and shares their game:

#Hexle 0005 4/6
🟧⬜⬜⬜
🟧🟦🟦🟦
🟧🟦🟧🟦
🟧🟧🟧🟧
http://jamesl.me/hexle?game=1bcb06f&n=5

Will make a PR and merge it in! Let me know of any suggestions to improve upon the colourblind-friendliness of the game.

Awesome! Thanks for handling it! It's much easier to grok now :)
#Hexle 0005 5/6
⬜⬜🟦⬜
⬜🟦⬜🟦
🟧⬜🟦⬜
🟧🟧⬜⬜
🟧🟧🟧🟧
https://jamesl.me/hexle/index.html?game=809691e&n=5

Excellent! Thanks for providing feedback about how I can improve Hexle — contributions are always welcome!


[Table] Expandable row selection toggle works incorrectly when there are disabled rows under it

Describe the bug (current behavior)
Expandable row inside a Table, that has disabled and enabled rows as its' sub-rows handles selection toggling incorrectly.
Expected Behavior
That seems incorrect firstly because disabled rows (in our team's opinion) should not be counted when checking whether all sub-rows are selected, therefore the checkbox state in Step 3 should have been that all sub-rows are selected. Secondly, toggling the selection in Step 4 should in-turn disable all selected rows that are sub-rows of the expandable row.
Link to minimal repro
https://itwin.github.io/iTwinUI/react/?story=table--full2
Steps To Reproduce

Use Table component with selectable rows and expandable rows allowed

Add a row with at least one sub-row enabled and one disabled

Toggle selection of the expandable row (notice a minus icon appear inside the checkbox rectangle, indicating some, not all sub-rows are selected)

Toggle selection of the same expandable row again (notice that the selection stays the same but minus icon disappears)

Product 4 row in the repro link can be used as an example.
Anything else?
No response

I think this issue might be the same as #928?

@mayank99 seems similar in some regards of the issue, although in that case the reason for why not all sub-rows are selected is because they are filtered out, however they are still selectable. Where I see the difference - in my case the rows are not even selectable so I'd argue that since all of the selectable rows are selected, the parent row selection should indicate that they are all selected, whereas in the issue you mentioned some rows are just hidden, not selected, but they are still selectable (and some might even be selected off-screen before filtering happened) so the initial state seems correct for that scenario.

It's unlikely that we will change the parent row to be (visually) selected when some rows are not selected. It might fit your narrow use-case (in which case I think you might be able to set manual state?), but our Table is designed to support a wide variety of scenarios. Think of a case where some disabled rows might be pre-selected; these should be taken into account when calculating the total selected state.
The main "bug" here is only that clicking on the checkbox does nothing, similar to #928 (but maybe not the same). We'll look into it 👍 Thanks for the report.
I also noticed some weird behaviors around when the row is expanded vs collapsed. This is all likely caused by improper memoization conditions in TableRowMemoized.
https://github.com/iTwin/iTwinUI/assets/9084735/7b3260c0-387d-4498-bd3b-6769341cac8f

hey i just want to chip in. It looks like the selector stop working only when the sub rows contains disabled values. Otherwise it works

@idhard Can you elaborate on what you mean by "selector"? Maybe you can share a screenshot/screen-recording of what you're seeing vs what you expected to see.

@mayank99
https://github.com/iTwin/iTwinUI/assets/820664/96c19c95-9f8b-4bcc-9163-88000df9adf8
the bug only happen when the parent rows contain disabled child rows, otherwise the checkbox seems to work

This has been fixed in 3.10.0 🥳


build: suppress warning unless clang-15

Signed-off-by: JaySon-Huang<EMAIL_ADDRESS>What problem does this PR solve?
Issue Number: close https://github.com/pingcap/tiflash/issues/6007
Problem Summary:
What is changed and how it works?
Check List
Tests

[ ] Unit test
[ ] Integration test
[ ] Manual test (add detailed scripts or steps below)
[x] No code

Side effects

[ ] Performance regression: Consumes more CPU
[ ] Performance regression: Consumes more Memory
[ ] Breaking backward compatibility

Documentation

[ ] Affects user behaviors
[ ] Contains syntax changes
[ ] Contains variable changes
[ ] Contains experimental features
[ ] Changes MySQL compatibility

Release note

None

It is available in official clang-13 but not available in apple clang-13
https://releases.llvm.org/13.0.0/tools/clang/docs/DiagnosticsReference.html#wunused-but-set-variable
just ignore for they won't make compile error.


Fix issue on esp_http_client_example (IDFGH-6717) #8346 (IDFGH-6740)

As stated in (IDFGH-6717) #8346, this commit change the file esp_http_client_example.c to always free output_buffer on HTTP_EVENT_DISCONNECTED,

 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.

@luanfrj Thanks for creating the PR. I have created internal MR. So this PR will be close. Thanks again for your contribution.

No problem. I gonna close the PR.


(FACT-1276) Make external facts dir absolute instead of canonicalizing

It's not necessary to get the full canonical path for external facts
dir - we only need it to be absolute. Attempting to canonicalize paths
is more expensive, and can fail on Windows when boost::filesystem is
built to support Windows 2003, as we do.

when boost::filesystem is built to support Windows 2003, as we do

I thought we had dropped the 2003-supporting builds? I may have confused intention and reality (or branches). /cc @MikaelSmith

In that case, another fix for this is to build boost::filesystem with -D_WIN32_WINNT=0x0600

Ah, possible but a little more involved. Is there value to canonicalizing the path?

Regardless of the windows situation, though, canonicalization can be a very expensive operation (lots of stat calls) vs just creating an absolute path and letting the kernel do it's job to follow symlinks

@MikaelSmith I don't think there's any value to canonicalizing in this case

I'll add a ticket for using _WIN32_WINNT=0x0600 for Windows builds; that's unrelated to this change then.


Cannot install to QT 4.5.2..

I have Qtcreator 4.5.2.
I have copied the .so file in: /usr/lib/x86_64-linux-gnu/qtcreator/plugins
But when I launch the Qtcreator I get this error:

Could you please help me to fix this?

Prebuilt versions are compatible with Qt Creator from http://download.qt.io.
It looks like you're using Qt Creator installed from a native package manager. So you should build the plugin from source or use Qt Creator from http://download.qt.io.
Similar to #22


docs: add note about not supported on cluster build runtimes.

Quarkus should work.

Quarkus should work.

Just updated it.

/approve
/lgtm
Thanks @marcosnils !


Clean up ManilaShare instances

When an entry in the ManilaShares spec is deleted, the corresponding instance must also be deleted.
Note that removing the instance backend currently does not clean up the service entry in the Manila DB.
That will be handled in a follow-up patch.
Jira: https://issues.redhat.com/browse/OSPRH-6525

@gouthampacha @silvacarloss @vhariria FYI this code is tested by kuttl (manila-multibackend) with an additional step where we remove a share before cleanup the top-level CR. By doing this we know this code is executed and produces the expected result.


zls: 0.12 -> 0.13

Changelog: https://github.com/zigtools/zls/compare/0.12.0...0.13.0
Description of changes

Things done

Built on platform(s)

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

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

[ ] sandbox = relaxed
[ ] 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

[x] 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.11 Release Notes (or backporting 23.11 and 24.05 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.

@figsoda @moni-dz

Also, I'd like to become a maintainer of this. But since there already are two of you, I wanted to ask before making the commit?

Sorry for the questinon, but I am getting this kind of error
error: builder for '/nix/store/wqa96vin6m26qp1msv6nm7rdk3ljhrdk-zig-0.12.0.drv' failed with exit code 2;
       last 10 log lines:
       > 1 error generated.
       > make[2]: *** [CMakeFiles/zigcpp.dir/build.make:76: CMakeFiles/zigcpp.dir/src/zig_llvm.cpp.o] Error 1
       > 1 error generated.
       > make[2]: *** [CMakeFiles/zigcpp.dir/build.make:118: CMakeFiles/zigcpp.dir/src/zig_clang_driver.cpp.o] Error 1
       > 1 error generated.
       > make[2]: *** [CMakeFiles/zigcpp.dir/build.make:104: CMakeFiles/zigcpp.dir/src/zig_clang.cpp.o] Error 1
       > 1 error generated.
       > make[2]: *** [CMakeFiles/zigcpp.dir/build.make:132: CMakeFiles/zigcpp.dir/src/zig_clang_cc1_main.cpp.o] Error 1
       > make[1]: *** [CMakeFiles/Makefile2:91: CMakeFiles/zigcpp.dir/all] Error 2
       > make: *** [Makefile:136: all] Error 2
       For full logs, run 'nix log /nix/store/wqa96vin6m26qp1msv6nm7rdk3ljhrdk-zig-0.12.0.drv'.
error: 1 dependencies of derivation '/nix/store/58hpimfszcz4a3mhs701rrddzbdi6vb8-zig-hook.drv' failed to build
error: 1 dependencies of derivation '/nix/store/8k9a0acvyn4kpmv5shiv7k1ma58didd0-zls-0.12.0.drv' failed to build
error: 1 dependencies of derivation '/nix/store/341dx3xfaas5isvyk2v3m3i84lq2pi1m-nix-shell-env.drv' failed to build

This is when zig v0.13 and zls v0.12 are used at the same time in a nix shell (using flakes)

yeah, zls is very sensitive about mismatching zig versions.
sadly i cant merge this, we'll just have to wait

Poking remaining approvers. Causes noticeable performance issues on even mid-end hardware because of the mismatch.
Would suggest keeping zig and zls in sync in future.

Any update on this? Keep getting warning from zig about zls being 0.12 instead of 0.13.

any update?

cc @figsoda

Uhm, it seems out of stupidity I've closed this... Will try to reopen :(

@figsoda @moni-dz Any update on this?

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/prs-already-reviewed/2617/1863


Update README.md to clarify how catch works

The readme was using catch before it explained how it worked. It was not showing the difference between catch(function () {}) and then(null, function () {})

thanks!

why was this changed?

It was using catch before defining what catch did. There is a line in the README below the change that reads:

You can also use catch for error handling, which is a shortcut for then(null, rejection), like so:

i would prefer to not mention then(null, cb) at all, it is 95% not what the user wants.

What would a user expect when using then(null, cb)?

Does null work differently than undefined in this case? Or are the docs for catch wrong? https://github.com/tildeio/rsvp.js/blob/master/lib/rsvp/promise.js#L366

Ok, so the existing for then(null, x) is basically a trap. It works really well as an implementation detail (assimilation) when combining multiple promise libraries, but very poor for humans especially ones not as familiar with promises.
Let me explain.
In basically every case, where a use would use the second arg to then, they would be better off using the more explicit .catch
For example:
then(function() {
  // syntax error !!!!
}, function(reason) {
   // do something something went wrong
   /// oh no! this will not fire in this case, as it is a sibling to the success handler...
});

instead what the user actually intended was:
then(function() {
   // syntax error
}).catch(function(reason) {
  // ah, it was caught correctly
})

but if they actually wanted the then(x,y) if they didn't know about the y arg, they would more clearly do the follow, and it work as expected.
p.catch(y).then(x);

What I'm really saying is, if you want to catch use catch, if you want do something after something else completed use then. One can entirely forget about then(null, x) or the second then arg altogether and be not only successful but never fall into the above trap, or lead someone else into the above trap.


UPDATE: Changed name of config variable jupyter_images_urlpath

changed name of config variable from jupyter_images_urlpath to jupyter_download_nb_image_urlpath
Companion PR for https://github.com/QuantEcon/lecture-source-py/pull/577

Do we need to update anything in the RST, or does Jupinx handle it?

this is all jupinx :-). It fixes the download set of notebooks to have web referenced links for images and figures.

Actually, I will merge, seeing as you've already merged this in on the py side.


Add readme and getting started guide

Add an initial readme and getting started guide.

Fixed by #51


App store connect issue on push notification

We identified one or more issues with a recent delivery for your app, "Data4Diabetis" 1.0.1 (7). Your delivery was successful, but you may wish to correct the following issues in your next delivery:ITMS-90078: Missing Push Notification Entitlement - Your app appears to register with the Apple Push Notification service, but the app signature's entitlements do not include the 'aps-environment' entitlement. If your app uses the Apple Push Notification service, make sure your App ID is enabled for Push Notification in the Provisioning Portal, and resubmit after signing your app with a Distribution provisioning profile that includes the 'aps-environment' entitlement. Xcode does not automatically copy the aps-environment entitlement from provisioning profiles at build time. This behavior is intentional. To use this entitlement, either enable Push Notifications in the project editor's Capabilities pane, or manually add the entitlement to your entitlements file. For more information, see https://developer.apple.com/library/content/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/HandlingRemoteNotifications.html#//apple_ref/doc/uid/TP40008194-CH6-SW1.After you’ve corrected the issues, you can upload a new binary to App Store Connect.

Log in to the Apple Developer Provisioning Portal: Go to the Apple Developer website (developer.apple.com) and sign in with your Apple Developer account.
Enable Push Notifications for your App ID: Navigate to the "Certificates, Identifiers & Profiles" section and select "App IDs" from the sidebar. Find your App ID and make sure it has the "Push Notifications" capability enabled. If it's not enabled, edit the App ID and enable the capability.
Generate a new Provisioning Profile: Once the Push Notifications capability is enabled for your App ID, you need to create a new Distribution provisioning profile. Go to the "Provisioning Profiles" section and select "Distribution" from the sidebar. Create a new provisioning profile for your app, making sure to select the correct App ID and enable the Push Notifications capability for it.
Download and install the new Provisioning Profile: After creating the provisioning profile, download it and double-click to install it on your development machine. This will make it available in Xcode for code signing.
Update your Xcode project settings: Open your Xcode project and go to the project settings. In the "Signing & Capabilities" tab, make sure you have selected the newly downloaded provisioning profile for the "Release" build configuration. This ensures that the correct entitlements are included in your app during the build process.
Verify entitlements file: If you already have an entitlements file in your Xcode project, make sure it includes the 'aps-environment' entitlement. If not, you can manually add it to the entitlements file. If you don't have an entitlements file, you can create one and add the 'aps-environment' entitlement.
Build and upload: Build your app using the updated settings and ensure that the 'aps-environment' entitlement is included in the app's signature. Once you have a valid binary, you can upload it to App Store Connect for review and submission to the App Store.
It's important to note that Xcode does not automatically copy the 'aps-environment' entitlement from provisioning profiles at build time, which is why you need to ensure the correct provisioning profile and entitlements are set up in your project.


examples/widgets/pageable_list.dart fails when list has only one or two items

 Issue by Hixie
Tuesday Aug 25, 2015 at 21:59 GMT
Originally opened as https://github.com/flutter/engine/issues/828

This has been fixed.


No such file

I installed bootleg by
git clone git@github.com:HazyResearch/bootleg bootleg cd bootleg python3 setup.py install
but when i run ann = BootlegAnnotator(), it reports
[Errno 2] No such file or directory: 'bootleg\\data\\entity_db\\entity_mappings\\alias2qids.json'

Hello, I just pushed a fix to the master branch to fix this. It should just be alias2qids.


Update to v2 to reduce deps

Fixes https://github.com/open-telemetry/opentelemetry-proto-go/issues/100
Thanks to it consumers that do not use gRPC (but send protobuf over HTTP)  can import go.opentelemetry.io/proto/otlp/v2 that does not depend on google.golang.org/grpc.
The existing v1 go.opentelemetry.io/proto/otlp packages (and module) would have to be deprecated afterwards and give instruction which packages should be used instead.
Alternative approach: https://github.com/open-telemetry/opentelemetry-proto-go/pull/155

Closing per https://github.com/open-telemetry/opentelemetry-proto-go/issues/100#issuecomment-1959800064


created es_mx.json

translated to spanish mx

i didnt find the strings for the advancements, there is a way to translated them?

I'm not too sure how to add make advancements translatable so not for now. Gracias amigo


Warnings on multiple Field validations

In the docs you said that for multiple field validations, i.e: required & password, one should do: <Field validate={[required, password]} />.
that works perfectly. As described here: documentation
but, my chrome console prints annoying warnings saying:
Invalid prop `validate` of type `array` supplied to `Field`, expected `function`.

Looks like a bug to me. or am I missing something?

This is fixed in v6.6.1 (08a377e) :-)


SERVER-560: add Tuning Guide links to pages

Added Tuning Guide links to index and services_master_puppetserver pages.

:+1:

@jbondpdx (facepalm) sorry, I didn't realize this was in our own repo or we could have just made the change ourselves and ask for a quick review.  Thanks for doing it!

No worries! We have a sorta funny docs setup for Server. Also, I really
don't mind doing it at all. :-)
On Thu, Apr 30, 2015 at 1:53 AM, Chris Price<EMAIL_ADDRESS>wrote:

Merged #514 https://github.com/puppetlabs/puppet-server/pull/514.
—
Reply to this email directly or view it on GitHub
https://github.com/puppetlabs/puppet-server/pull/514#event-293812740.

--
Jean Bond
Technical Documentation
Puppet Labs


Add option to mute music / sfx

Need to add options to mute music/sfx as needed.
Will reside inside the menu screen.

Code is ready and it will be on the next update.

Fixed in v0.1 (https://github.com/jflores82/visnar/commit/ed2f5322d6485919a6769678b753a98b0d82057e)


这是什么意思？ Number of id images in total images

这个参数是什么意思？ Number of id images in total images

The number of images is where it looks for the character inside the prompt. Normally, in the new version where we can name the character by name, I think this parameter is obsolete and will probably be removed.

The number of images is where it looks for the character inside the prompt. Normally, in the new version where we can name the character by name, I think this parameter is obsolete and will probably be removed.

Understood. Thanks.


feat: Soft Navigations trial

Introducing a lighter and simplified version of the existing spa feature that tracks soft navigations. This new feature still sends BrowserInteraction events, but the duration and finishing of those interactions have been redefined. As a replacement, it ought to reduce complexity and integration issues around the existing spa and exhibit better and faster performance.

Overview
Soft navigations feature is disabled unless the soft-nav feature flag is passed into the init configuration, in which case soft nav will replace the old spa on the page. This feature captures "interactions" based on the following sequences in exact chronological order:

click, keydown, or submit event on the page occurs
a. an interaction can also be started through the newrelic.interaction() api
the location (url) of the page is altered
there's a dom change noticed by MutationObserver

No ensuing single or chained callbacks, network requests, async timers, etc. are tracked, and they do not affect the length of the interaction, unlike the old spa method. The createTracer spa api will have no effect on soft nav, though the other spa apis remain the same.
Related Issue(s)
Building on #626
Angler: https://source.datanerd.us/agents/angler/pull/529
Testing
Jest & wdio tests for feature added based on this google doc

Any plans to pull only either the old or the new implementation into the browser? Currently, both are part of the spa build. Hence the significant increase in size.

Any plans to pull only either the old or the new implementation into the browser? Currently, both are part of the spa build. Hence the significant increase in size.

It is not possible in our current deployment mechanics. Our plans are to eventually remove the old SPA feature completely which will reduce the bundle size. In the mean time, the NPM package allows customers to build their own customized agent with the features they care about.


Support trace prop “schDisplayLabel” that turns trace line into a label on the schematic

Need to first define prop is tscircuit props
/bounty $20

/attempt #375


[HELP] Ibis integration

Hi!
I'm working on a clickhouse backend for ibis, someone else might be interested as well.
Also, is there someone who is more experienced with clickhouse willing to contribute/help with implementing it?

you can use native python driver https://github.com/mymarilyn/clickhouse-driver to connect to clickhouse and execute queries

Thanks @Slach! I'm using the native driver.

@Slach How could I extract a list of clickhouse query identifiers? Something like this.


Write a code of conduct

The school has a pledge that should be reflected here

Done done and done


Configure star command not to advance to next match

Why does the star command, *, advance to the next match, rather than to the beginning of the current match (the word under the cursor when star is invoked)?
So often do I immediately back up (using N) to the word my cursor was over when I invoked the star command that I wonder if I can make this the default behavior.  Is it possible?  Is it misguided to want this?
I briefly grepped the vim source tree but was unable to find if anything for this exists.

Why would you want this? When I use * I want to find other usages of the word under the cursor. If it's about highlighting then you can easily add nnoremap * *N to your personal config.

I want it for example for doing a search and replace in a visually selected range of lines where the I make the selection by using *, V, and N.
For example, typing something like *VNN:s/C-R//replacement.  If my cursor is over the word I want to replace, let's call it oldword, I can type * to select oldword as the search term, V to start a visual highlight, NN to select the range of lines that include two more instances of the search term, and type : to go into command mode (which prepopulates :'<,'>), and then do a search and replace by starting with s/, then typing CTRL-R / to paste \<oldword\>, and then complete the command :'<,'>s/\<oldword\>/newword/g.
Usually I want to replace the instance of oldword that my cursor was on when I typed *.  So I type * and then immediately back up using N.
Why would you want the current behavior?
Thank you for the nnoremap suggestion.  I'll try it.

How about these mappings:
# bounded search
nnoremap c* <Cmd>call expand('<cword>')->printf('\<%s\>')->setreg('/')<CR>cgn
# UNbounded search
nnoremap cg* <Cmd>call expand('<cword>')->setreg('/')<CR>cgn

Then:

press c* (or cg*) while on the word you want to change
insert the new word
press Escape to get back to normal mode
press . as many times as necessary to replace the next occurrences of the old word

Wow, nice!  I'll play with that.
I'll close this issue, though I would still like to know what the motivation is for star to automatically advance to the next match.
I presume it's to make some repeated use nicer, but I just can't think of an example to demonstrate why.

@jzinn as I said, I use it (and I assume this is the original purpose) to find other usages of the word under the cursor. So I'm not interested in staying on the original match, I want to skip to other parts of the document where that word is used. For replacing the word, I use variations on the mappings @lacygoill suggested.

Wow, nice!  I'll play with that.
I'll close this issue, though I would still like to know what the
motivation is for star to automatically advance to the next match.
I presume it's to make some repeated use nicer, but I just can't think
of an example to demonstrate why.

I nearly always use "*" to find the next instance of a word.  And with
'hlsearch' on I can see all instances of it.  Usually a variable or
function name.
--
Imagine a world without hypothetical situations.
/// Bram Moolenaar -- @.*** -- http://www.Moolenaar.net   \
///                                                                      \
\\        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ ///
\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

If i use the * family of commands, I always want the cursor move to the next/previous instance of the match.


Added Dijkstra shortest path algorithm [python]

Added Dijkstra's shortest path implementation in python.

PR without assigned to the issue


Merge not working without comment

Code is not being merged when ghprb triggers from a PR creation.
We are seeing the message 'The comment does not contain the required trigger phrase.'
The plugin is configured to

Only build via ghprb
Use github hooks for build triggering
Use Trigger Phrase "Test and Merge"
Only use trigger phrase for build triggering is disabled
Build every pull request automatically without asking (Dangerous!).
Github Pull Request Merger Merge comment set to 'Tested and merged by Jenkins'
Fail the build if the Pull Request can't be merged? is set to true

Tested with a PR that has a title and no body, and with one that has a body, but not the required trigger phrase. Even tested with putting the trigger phrase in the comment body of the PR.
Using the current version of ghprb (1.30.3) with Jenkins 1.641
GitHub pull request #12 of commit f973bb1d983006d2c75822835bd2b790ab9b9305, no merge conflicts.
Setting status of f973bb1d983006d2c75822835bd2b790ab9b9305 to PENDING with url http://xxxx/9/ and message: 'Build started sha1 is merged.'
Building in workspace /var/lib/jenkins/workspace/xxxx
 > git rev-parse --is-inside-work-tree # timeout=10
Fetching changes from the remote Git repository
 > git config remote.origin.url http://xxxx.git # timeout=10
Fetching upstream changes from http://xxxx.git
 > git --version # timeout=10
 > git fetch --tags --progress http://xxxx.git +refs/heads/*:refs/remotes/origin/* +refs/pull/*:refs/remotes/origin/pr/*
 > git rev-parse refs/remotes/origin/pr/12/merge^{commit} # timeout=10
 > git rev-parse refs/remotes/origin/origin/pr/12/merge^{commit} # timeout=10
Checking out Revision f5161412655d6ef1eee0cc608d327cf5766d0953 (refs/remotes/origin/pr/12/merge)
 > git config core.sparsecheckout # timeout=10
 > git checkout -f f5161412655d6ef1eee0cc608d327cf5766d0953
First time build. Skipping changelog.
[xxxx] $ /bin/sh -xe /tmp/hudson5824809567985058849.sh
+ npm install
+ ... other stuff..
The comment does not contain the required trigger phrase.
Finished: SUCCESS
Setting status of f973bb1d983006d2c75822835bd2b790ab9b9305 to SUCCESS with url http://xxxx/9/ and message: 'Build finished. No test results found.'
Finished: SUCCESS

If the configured 'Test and Merge' comment is added to the PR then the build runs again and merges the code.
We want ghprb to simply run on PR creation and merge if the build is successful.
As an aside, this should fail the build.

Clearing the configuration for the trigger phrase does not help.

Line 130 of GhprbPullRequestMerge.java requires there to be a comment body, and for it to have a trigger phrase.
This seems to run counter to the builder's setting of permitAll (Build every pull request automatically without asking (Dangerous!).	), which runs a build without asking.
My local change has been to respect the permitAll setting in merger as well as builder, but I'm not sure that this may well be too intrusive a change to simply do a PR on.
https://github.com/abovethewater/ghprb/commit/7f90a7dda917afe9685c31c7541781dc2cc091e7

:+1:
I also intended to allow a merge without requiring specific commit comment, and this was not in line with my expectations.  I'd like to see this change merged.

+1
I'm playing with the plugin and my intention was to just build every submitted PR and be very strict with quality gates, so fail the build if the code quality is not high enough. If everything passes, there is no need for human checking and I don't want to have to trigger a merge with a comment all the time.
So, can I encourage you @abovethewater to submit the PR?

The guys above said all I wanted to say.

ok to go and merge by Jenkins


Open Soruce Filter

How can I open Pull Rerquest ? Here i must start?

Acording to The Rules: Open Source: The generator must be released under an open source license.


Add progress bar

ref #7
I added progress bar 🔧

[x] add proress bar
[x] add color variations after merge #132
[x] storybook

:tada: This PR is included in version 1.0.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


CLI improvements - followup

CLI improvements - Followup
Description

This is a followup of the previous cli improvements pr, it adds to the CLI the following commands that were used to be ran from the makefile:

compile
compile-and-prove
compile-and-run-all

The new functionality added makes use of Rust's Command to spawn processes of either cairo-compile or docker run with the image built from the dockerfile.
Type of change

[x] Optimization

Checklist

[x] This change requires new documentation.

[x] Documentation has been added/updated.

Codecov Report

Merging #603 (929ea85) into main (50b9fbd) will decrease coverage by 0.38%.
The diff coverage is 0.00%.

@@            Coverage Diff             @@
##             main     #603      +/-   ##
==========================================
- Coverage   95.71%   95.33%   -0.38%
==========================================
  Files         111      112       +1
  Lines       19298    19374      +76
==========================================
  Hits        18471    18471
- Misses        827      903      +76

Files
Coverage Δ

provers/cairo-prover-cli/src/commands.rs
0.00% <0.00%> (ø)

provers/cairo-prover-cli/src/main.rs
0.00% <0.00%> (ø)

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

nice one 🚀

Let's wait to merge this one until #596 is merged, so that no further conflicts appear on that PR.


Slack depends on wget

Issue description
Slack misses dependency wget (it also seems to reference an absolute path, which might have to be patched out depending on how Slack works internally).
Steps to reproduce
First make it crash:

/run/current-system/sw/bin/slack
(electron) 'app.makeSingleInstance(cb)' is deprecated. Use 'app.requestSingleInstanceLock() and app.on('second-instance', cb)' instead.
Creating Slack Application
Cannot upload crash dump: cannot exec /usr/bin/wget
Failed to get crash dump id.
Report Id:
Segmentation fault

Observe there is a dependency on wget. Also check that default.nix in the slack Nix expression does not contain wget.
Technical details
Applies to all versions of nixpkgs.

How do you make it crash? I can start it just fine

AFAIUI, #58273 is the issue about the crash itself.
This issue looks like it is about how their crash handler is hardcoded to use /usr/bin/wget which isn't part of the dependencies.

Hey, thanks for the report as this is stale for longer time and I confirmed its working on stable and unstable and the message is not present anymore.


When users[0] is screened out, we should test defaulting to next((user for user in users if user.application_is_approved), DAEmpty)

Not going to rush this fix, but it should work.
Will integrate after #101 is tested and merged

Really a niche usability issue, but the point is any place we default the answer to the answer given by users[0], we need to handle the situation where users[0] was screened out but users[1] was not.
@mnewsted points out that maybe we should just ask "which user's information do you want to use as the default?"


Upgrade guava to avoid vulnerability issue

Description
There are some vulnerability issues about early versions of guava. This PR is upgrading it to latest version.
https://mvnrepository.com/artifact/com.google.guava/guava

coverage: 48.05% (-0.001%) from 48.051% when pulling 7b0aae57211d99b22e1d23c36e767a54db32d6e9 on upgrade_guava into 0b28f31379d53e94d2862c31258f725da5011345 on master.


Add "Remember Me?" toggle to sign-in form

Most sign in forms have the option for longer session retention (so you don't have to keep logging in over and over again) – we should add this enhancement.

This would be very easy to implement using the devise Rememberable module; I didn't implement it when I worked on #2 since I wanted to implement a minimal set of devise modules, but it would be almost trivial to add it. The only thing we might have to do is edit the views to make sure the relevant check boxes are there and whatnot.

Let's see if I can get this done tonight.

I'm actually going to base this on top of the #1106 branch even though this is more straightforward just so I don't have to deal with merge conflicts later.

Done, I think. I don't really know how to test this, but the relevant cookie with appropriate expiration seems to be created when logged in. Opening PR.

Woot testing complete. On master there's only the session cookie: once you delete it the user session is forgotten (and this is considered a "session" cookie in the technical sense so it presumably doesn't last forever). After the module is added Devise creates a separate remember_user_token cookie that persists throughout sessions and has a future expiration date; therefore deleting the session cookie does not sign out the user. Cool!


Use unique element names to differentiate what the player is doing

Multiple input elements were named nickname which meant that the input in one field would overwrite the input of another field. Assigning the input elements a unique id for each game room fixes this problem.

This fixes #48.

Hello @rcjsuen, thank you for your PR!
Just out of curiosity, what other element had the ID nickname? 🤔


Add link to subreddit from post

Is your feature request related to a problem? Please describe.
Currently, when viewing a post there is no link to its subreddit.
Describe the solution you'd like
Maybe make the header (which has the name of the subreddit) link to the subreddit.

The subreddit name in the right swipe bar has a link to the subreddit

Thats kinda unintuitive though. I will make subreddit name clickable in header.


[BUG] An exception is thrown when trying to load long datatype from AzureTableStorage

Library name and version
Azure.Data.Tables 12.8.1
Describe the bug
Hi,
I have the below code
await var result = this.tableClient.QueryAsync<RequestEntity>(x => x.PartitionKey == "123").ToListAsync()

public abstract class RequestEntity: ITableEntity
{
    public virtual long Id { get; set; }

    public virtual string Name { get; set; }

    // other properties
}

An exception is being thrown, when I change the "Id" from long to int. it works as expected.
Expected behavior
No exception should be thrown and the data should be retrieved
Actual behavior
An exception is being thrown, when I change the "Id" from long to int. it works as expected.
Reproduction Steps
Run my code
Environment
VS 2022
Windows 11

Thank you for your feedback.  Tagging and routing to the team member best able to assist.

AzureTableStorageBug.zip
Attaching a working solution for the issue. Please check and let me know

After looking over the repro and discussing offline, the code in question is attempting to do something that is unsupported.
The example code creates an entity with a property Foo that is typed as int, but then tries to query it with a strongly typed model that changes this property type to long.
This mismatch of types seems like it would be fine because int is always castable to long, but the table data model serializes long/Int64 as string.
If your scenario requires a flexible entity schema, the TableEntity model will work, as demonstrated in your repro code. However, when providing a strongly typed model to the Query method, you are declaring that the entity schema will match the model schema. In some cases, this may work - but in cases where the wire protocol differs from the .NET type, this will fail, as in this case. If you intend to migrate this property in your model from int to long, I'd suggest you just add a new property to your model of the correct type.


run multiple instances of pac against different auth/org profiles at the same time

The current setup requires to select auth, org and then perform actions against them.
With this setup we can only run a single instance of pac on a machine. I'm not sure how azure pipeline deals with this. We would like to be able to run multiple processes of pac i.e. performing a release for multiple clients at once.
Can anyone guide me in the correct direction for this?

@aronmek Did you get any update? Or were you able to find a possible solution or workaround?
Thanks

@aronmek I'm facing a similar issue, please let me know if there was an answer to this thread. Thanks

I was not able to find a solution. It looks like the tool populates the Current json property in the authprofile_v2.json file whenever you run the pac auth select command.
What I did find though when while looking in the source code using ILSpy, that you can run commands with the parameter --log-to-console and it displays a whole lot of logs. It looks like internally it try's also to get tokens from a localhost endpoint (perhaps a managed identity endpoint)

PAC does not support running multiple instances with separate Auth states.


not valid hex string

Hi @isuPatches! how are you?
First, thank you for your work on this library, it was something really helpful in our project.
We are having an unusual issue for OnePlus 3T devices when we try to add a wifi network WPA2.
Here is the log:
05-17 17:52:41.627 1273-1750/? E/WifiConnectivityManager: Invalid max BSSID blacklist size:  0
05-17 17:52:41.761 1273-9551/? E/WifiService: not valid hex string: invalid char: V
05-17 17:52:41.761 1273-9551/? E/WifiService: SSID is invalid, SSID = VAMOSCUTCSA
05-17 17:52:41.761 1273-9551/? E/WifiService: bad network configuration
05-17 17:52:41.762 16533-25137/? E/WiseFy: Failed to add network
05-17 17:52:41.772 2694-24478/? W/Conscrypt: Could not set socket write timeout: java.lang.reflect.InvocationTargetException
05-17 17:52:41.773 2694-24478/? W/Conscrypt:     at java.lang.reflect.Method.invoke(Native Method)
05-17 17:52:41.773 2694-24478/? W/Conscrypt:     at com.google.android.gms.org.conscrypt.Platform.setSocketWriteTimeout(:com.google.android.gms<EMAIL_ADDRESS>(040400-194189626):13)
05-17 17:52:41.773 2694-24478/? W/Conscrypt: Caused by: android.system.ErrnoException: setsockopt failed: EBADF (Bad file descriptor)
05-17 17:52:41.773 2694-24478/? W/Conscrypt:     at libcore.io.Linux.setsockoptTimeval(Native Method)
05-17 17:52:41.773 2694-24478/? W/Conscrypt:     at libcore.io.ForwardingOs.setsockoptTimeval(ForwardingOs.java:173)
05-17 17:52:41.805 1273-9551/? E/WifiService: not valid hex string: invalid char: V
05-17 17:52:41.805 1273-9551/? E/WifiService: SSID is invalid, SSID = VAMOSCUTCSA
05-17 17:52:41.805 1273-9551/? E/WifiService: bad network configuration
05-17 17:52:41.805 16533-25137/? E/WiseFy: Failed to add network
05-17 17:52:41.899 2694-24478/? W/Conscrypt: Could not set socket write timeout: java.lang.reflect.InvocationTargetException
05-17 17:52:41.900 2694-24478/? W/Conscrypt:     at java.lang.reflect.Method.invoke(Native Method)
05-17 17:52:41.900 2694-24478/? W/Conscrypt:     at com.google.android.gms.org.conscrypt.Platform.setSocketWriteTimeout(:com.google.android.gms<EMAIL_ADDRESS>(040400-194189626):13)
05-17 17:52:41.900 2694-24478/? W/Conscrypt: Caused by: android.system.ErrnoException: setsockopt failed: EBADF (Bad file descriptor)
05-17 17:52:41.900 2694-24478/? W/Conscrypt:     at libcore.io.Linux.setsockoptTimeval(Native Method)
05-17 17:52:41.900 2694-24478/? W/Conscrypt:     at libcore.io.ForwardingOs.setsockoptTimeval(ForwardingOs.java:173)
05-17 17:52:42.630 24728-25059/? W/awcn.SessionCenter: |[seq:umeng:564ef50667e58e33e70021d1] app background, forbid to create accs session
05-17 17:52:42.631 24728-25059/? E/awcn.SessionCenter: |[seq:umeng:564ef50667e58e33e70021d1] [Get]connect exception errMsg:accs session connecting forbidden in background url:https://umengacs.m.taobao.com
05-17 17:52:42.631 24728-25059/? E/accs.InAppConn_umeng:564ef50667e58e33e70021d1:  reSend dataid:2 retryTimes:3
05-17 17:52:42.635 24728-25059/? E/accs.InAppConn_umeng:564ef50667e58e33e70021d1:  cancel customDataId:ctrl_bindapp
05-17 17:52:43.110 1273-1750/? W/WifiConfigManager: Looking up network with invalid networkId -1
05-17 17:52:43.116 1273-1750/? W/WifiConfigManager: Looking up network with invalid networkId -1
05-17 17:52:43.119 997-997/? W/wificond: Scan is not started. Ignore abort request
05-17 17:52:43.156 1273-1304/? W/BroadcastQueue: Background execution not allowed: receiving Intent { act=android.net.wifi.STATE_CHANGE flg=0x4000010 (has extras) } to com.cardinalblue.piccollage.google/com.adobe.creativesdk.aviary.internal.cds.CdsReceiver
05-17 17:52:43.442 1273-9550/? W/BroadcastQueue: Background execution not allowed: receiving Intent { act=android.net.wifi.STATE_CHANGE flg=0x4000010 (has extras) } to com.cardinalblue.piccollage.google/com.adobe.creativesdk.aviary.internal.cds.CdsReceiver
05-17 17:52:43.463 1273-9550/? W/BroadcastQueue: Background execution not allowed: receiving Intent { act=android.net.wifi.STATE_CHANGE flg=0x4000010 (has extras) } to com.cardinalblue.piccollage.google/com.adobe.creativesdk.aviary.internal.cds.CdsReceiver
05-17 17:52:43.466 542-542/? E/WifiHAL: wifi_get_packet_filter_capabilities: requestResponse() error: -1
05-17 17:52:43.467 1273-1750/? E/WifiVendorHal: getApfCapabilities(l.1577) failed {.code = ERROR_UNKNOWN, .description = unknown}
05-17 17:52:43.488 1273-9551/? W/BroadcastQueue: Background execution not allowed: receiving Intent { act=android.net.wifi.STATE_CHANGE flg=0x4000010 (has extras) } to com.cardinalblue.piccollage.google/com.adobe.creativesdk.aviary.internal.cds.CdsReceiver
05-17 17:52:43.497 2177-2177/? E/wpa_supplicant: wpa_driver_nl80211_driver_cmd: failed to issue private commands
05-17 17:52:43.497 1273-1750/? E/SupplicantStaIfaceHal: ISupplicantStaIface.addRxFilter failed: FAILURE_UNKNOWN,
05-17 17:52:44.638 24728-25059/? W/awcn.SessionCenter: |[seq:umeng:564ef50667e58e33e70021d1] app background, forbid to create accs session
05-17 17:52:44.638 24728-25059/? E/awcn.SessionCenter: |[seq:umeng:564ef50667e58e33e70021d1] [Get]connect exception errMsg:accs session connecting forbidden in background url:https://umengacs.m.taobao.com
05-17 17:52:44.650 24728-25059/? E/accs.InAppConn_umeng:564ef50667e58e33e70021d1:  reSend dataid:2 retryTimes:4
05-17 17:52:44.661 24728-25059/? E/accs.InAppConn_umeng:564ef50667e58e33e70021d1:  cancel customDataId:ctrl_bindapp
05-17 17:52:44.728 1273-1304/? W/BroadcastQueue: Background execution not allowed: receiving Intent { act=android.net.wifi.STATE_CHANGE flg=0x4000010 (has extras) } to com.cardinalblue.piccollage.google/com.adobe.creativesdk.aviary.internal.cds.CdsReceiver
05-17 17:52:44.765 1273-1304/? W/BroadcastQueue: Background execution not allowed: receiving Intent { act=android.net.wifi.STATE_CHANGE flg=0x4000010 (has extras) } to com.cardinalblue.piccollage.google/com.adobe.creativesdk.aviary.internal.cds.CdsReceiver
05-17 17:52:44.824 1273-1750/? E/WifiStateMachine: Did not find remoteAddress {<IP_ADDRESS>} in /proc/net/arp
05-17 17:52:44.826 1273-9551/? W/BroadcastQueue: Background execution not allowed: receiving Intent { act=android.net.wifi.STATE_CHANGE flg=0x4000010 (has extras) } to com.cardinalblue.piccollage.google/com.adobe.creativesdk.aviary.internal.cds.CdsReceiver
05-17 17:52:44.878 2276-2369/? W/QCNEJ: |CORE| network available: 154
05-17 17:52:44.887 2276-2369/? W/QCNEJ: |CORE| onAvailable: bind the process to WIFI
05-17 17:52:44.899 1273-1747/? W/ContextImpl: Calling a method in the system process without a qualified user: android.app.ContextImpl.sendBroadcast:967 com.android.server.net.NetworkPolicyManagerService.broadcastDataUsageAlarm:4518 com.android.server.net.NetworkPolicyManagerService.updateNotificationsNL:1173 com.android.server.net.NetworkPolicyManagerService$8.onReceive:986 android.app.LoadedApk$ReceiverDispatcher$Args.lambda$-android_app_LoadedApk$ReceiverDispatcher$Args_53427:1339
05-17 17:52:44.923 1273-2270/? E/GnssLocationProvider: updateNetworkAvailability failed
05-17 17:52:44.962 1273-1747/? W/ContextImpl: Calling a method in the system process without a qualified user: android.app.ContextImpl.sendBroadcast:967 com.android.server.net.NetworkPolicyManagerService.broadcastDataUsageAlarm:4518 com.android.server.net.NetworkPolicyManagerService.updateNotificationsNL:1173 com.android.server.net.NetworkPolicyManagerService$8.onReceive:986 android.app.LoadedApk$ReceiverDispatcher$Args.lambda$-android_app_LoadedApk$ReceiverDispatcher$Args_53427:1339
05-17 17:52:44.982 995-1186/? E/NetlinkEvent: NetlinkEvent::FindParam(): Parameter 'INTERFACE' not found
05-17 17:52:44.982 995-1186/? E/NetlinkEvent: NetlinkEvent::FindParam(): Parameter 'STATE' not found
05-17 17:52:44.982 995-1186/? E/NetlinkEvent: NetlinkEvent::FindParam(): Parameter 'TIME_NS' not found
05-17 17:52:44.982 995-1186/? E/NetlinkEvent: NetlinkEvent::FindParam(): Parameter 'UID' not found
05-17 17:52:45.004 1004-2271/? E/IzatSvc_ComboNetworkProvider: Exiting with error proc line 208 "1"
05-17 17:52:45.051 540-1721/? E/qti_sensors_hal: sendEnableReq:sensor(android.sensor.significant_motion) Sending enable to svc no:40
05-17 17:52:45.064 22324-22635/? E/accs.SilenceConn_umeng:564ef50667e58e33e70021d1:  0 spdySessionCloseCallback, errorCode:-2032
05-17 17:52:45.065 22324-22635/? E/accs.SilenceConn_umeng:564ef50667e58e33e70021d1:  0 notifyStatus:DISCONNECTED
05-17 17:52:45.071 2694-24650/? E/WakeLock: release without a matched acquire!
05-17 17:52:45.144 4718-24724/? W/ContextImpl: Calling a method in the system process without a qualified user: android.app.ContextImpl.startService:1477 android.content.ContextWrapper.startService:645 com.oneplus.security.network.trafficalarm.TrafficUsageAlarmIntentService.startService:73 com.oneplus.security.network.trafficalarm.TrafficUsageAlarmReceiver$1.doInBackground:60 com.oneplus.security.network.trafficalarm.TrafficUsageAlarmReceiver$1.doInBackground:32
05-17 17:52:45.144 2694-24478/? W/ctxmgr: [AclManager]No 2 for (accnt=account#1047505475#, com.google.android.gms(10010):UserLocationProducer, vrsn=12673000, 0, 3pPkg = null ,  3pMdlId = null ,  pid = 2694). Was: 2 for 1, account#1047505475#
05-17 17:52:45.145 4718-24726/? W/ContextImpl: Calling a method in the system process without a qualified user: android.app.ContextImpl.startService:1477 android.content.ContextWrapper.startService:645 com.oneplus.security.network.trafficalarm.TrafficUsageAlarmIntentService.startService:73 com.oneplus.security.network.trafficalarm.TrafficUsageAlarmReceiver$1.doInBackground:60 com.oneplus.security.network.trafficalarm.TrafficUsageAlarmReceiver$1.doInBackground:32
05-17 17:52:45.213 2694-25190/? E/WakeLock: release without a matched acquire!
05-17 17:52:45.218 2694-25190/? E/WakeLock: release without a matched acquire!
0

Hi there!  Thanks for reporting to improve the library.
Hmm...this is interesting...
05-17 17:52:41.761 1273-9551/? E/WifiService: not valid hex string: invalid char: V
05-17 17:52:41.761 1273-9551/? E/WifiService: SSID is invalid, SSID = VAMOSCUTCSA
05-17 17:52:41.761 1273-9551/? E/WifiService: bad network configuration

The network is not being created because of the network configuration...specifically the SSID.  Does the same network SSID work on other devices?
I will do two things over the weekend:

Investigate rules for WPA2 network SSIDs
Try to replicate on various brands, although it could be specific to OnePlus.

Hi @isuPatches !
We try the same network on a Samsung J7, Xiaomi, Alcatel and Moto g4 and it works.
Something that I didn't test was trying to add a different network (because as you said, maybe is the network configuration). I will try that case today.
Thanks for your help!

Hi @isuPatches! we did a test with another network and we got the same error.

Hey @tinchoz49 I have been thinking on this for the past week.  I apologize for not responding sooner.  I believe the issue is with the OnePlus.  My proposal at this time is to add documentation about this issue as a known limitation as I'm uncertain we can work around what the OnePlus is thinking.  I investigated and found many issues of the OnePlus and connecting to a created network so for now I think I am going to close this issue.
I apologize and hope you continue to use the library.

of course, I will keep using it :) thanks for taking the time to check this issue.


"A KeyDownEvent is dispatched, but the state shows that the physical key is already pressed" on exception in formatEditUpdate

════════ Exception caught by services library ══════════════════════════════════
A KeyDownEvent is dispatched, but the state shows that the physical key is already pressed. If this occurs in real application, please report this bug to Flutter. If this occurs in unit tests, please ensure that simulated events follow Flutter's event model as documented in `HardwareKeyboard`. This was the event: KeyDownEvent#74629(physicalKey: PhysicalKeyboardKey#00000(usbHidUsage: "0x1100000000", debugName: "Key with ID 0x1100000000"), logicalKey: LogicalKeyboardKey#00008(keyId: "0x100000008", keyLabel: "Backspace", debugName: "Backspace"), character: "", timeStamp: 2:08:43.743307)
'package:flutter/src/services/hardware_keyboard.dart':
package:flutter/…/services/hardware_keyboard.dart:1
Failed assertion: line 437 pos 16: '!_pressedKeys.containsKey(event.physicalKey)'

This occurs when an exception is thrown in formatEditUpdate. The reproduction code below produces the above exception, but my actual use-case involves a much more critical outcome, the backspace just stops working in the whole app.

Open app
Type something in the text field
Remove this text, expecting an exception when removing the last character

I expect only the:
The following assertion was thrown during a platform message callback:
'dart:ui/text.dart': Failed assertion: line 2749 pos 15: 'start != null && start >= -1': is not true.

I don't want the error to mess up with the keyboard event handling. And the preceding error is something that a developer can actually cause by mistake, when wrongly calculating the text selection (so that extents are <-1).

Reproduction code
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';

void main() {
  runApp(const App());
}

class App extends StatelessWidget {
  const App({Key? key}) : super(key: key);

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(),
        body: Padding(
          padding: const EdgeInsets.all(16),
          child: TextField(
            inputFormatters: [Formatter()],
          ),
        ),
      ),
    );
  }
}

class Formatter extends TextInputFormatter {
  @override
  TextEditingValue formatEditUpdate(
    TextEditingValue oldValue,
    TextEditingValue newValue,
  ) {
    if (newValue.text.isEmpty) {
      return TextEditingValue(
        text: '',
        selection: TextSelection(baseOffset: -2, extentOffset: -2),
      );
    }

    return newValue;
  }
}

[✓] Flutter (Channel stable, 2.5.3, on macOS 12.1 21C52 darwin-arm, locale en-PL)
    • Flutter version 2.5.3 at /Users/albert/fvm/versions/2.5.3
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 18116933e7 (3 months ago), 2021-10-15 10:46:35 -0700
    • Engine revision d3ea636dc5
    • Dart version 2.14.4

[✓] Android toolchain - develop for Android devices (Android SDK version 31.0.0)
    • Android SDK at /Users/albert/Library/Android/sdk
    • Platform android-31, build-tools 31.0.0
    • ANDROID_HOME = /Users/albert/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jre/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.10+0-b96-7249189)
    • All Android licenses accepted.

[✓] Connected device (4 available)
    • sdk gphone64 arm64 (mobile) • emulator-5554  • android-arm64  • Android 12 (API 31) (emulator) # Pixel 5

Hi @Albert221, can you provide the output of flutter run -v that shows the errors you're getting?
You also appear to be on an older version of stable, can you upgrade to the latest and let me know if you still experience this issue?
One more thing, do you get the error below often or does it occur intermittently?
A KeyDownEvent is dispatched, but the state shows that the physical key is already pressed. If this occurs in real application, please report this bug to Flutter. If this occurs in unit tests, please ensure that simulated events follow Flutter's event model as documented in `HardwareKeyboard`. This was the event: KeyDownEvent#74629(physicalKey: PhysicalKeyboardKey#00000(usbHidUsage: "0x1100000000", debugName: "Key with ID 0x1100000000"), logicalKey: LogicalKeyboardKey#00008(keyId: "0x100000008", keyLabel: "Backspace", debugName: "Backspace"), character: "", timeStamp: 2:08:43.743307)

Thank you

Doesn't occur on 2.8.1 thanks to https://github.com/flutter/flutter/pull/90211 and its addition of try-catch around the formatEditValue:
https://github.com/flutter/flutter/blob/7684f8b7c57a07a75dad75285ed71e7b40ca1e2c/packages/flutter/lib/src/widgets/editable_text.dart#L2378-L2390

@Albert221, given your comment above, is it safe to close this issue?

It looks like so :)

Closing based on above comment.


Crash on Sonoma: 'ExportDB' object has no attribute 'write_to_disk'

/Users/nicolas/.local/share/virtualenvs/osxphotos-wrbWIk7z-python/bin/osxphotos export /Users/nicolas/Data/Media/Photos/iCloudV6 --no-progress --export-by-date --exiftool --update --touch-file
Using last opened Photos library: /Users/nicolas/Pictures/Photos Library.photoslibrary
2023-11-24 10:38:22,920 - root - WARNING - photosdb.py - 151 - WARNING: This module has only been tested with macOS versions [10.12, 10.13, 10.14, 10.15, 10.16, 11.0, 11.1, 11.2, 11.3, 11.4, 11.5, 11.6, 11.7, 12.0, 12.1, 12.2, 12.3, 12.4, 12.5, 12.6, 12.7, 13.0, 13.1, 13.2, 13.3, 13.4, 13.5, 13.6, 14.0]: you have Darwin, OS version: 14.1
Processing database /Users/nicolas/Pictures/Photos Library.photoslibrary/database/photos.db
Processing database /Users/nicolas/Pictures/Photos Library.photoslibrary/database/Photos.sqlite
Processing database.
Database version: 6000, 9.
Processing persons in photos.
Processing detected faces in photos.
Processing albums.
Processing keywords.
Processing photo details.
Processing import sessions.
Processing additional photo details.
Processing face details.
Processing photo labels.
Processing EXIF details.
Processing computed aesthetic scores.
Processing comments and likes for shared photos.
Processing moments.
Processing syndication info.
Processing shared iCloud library info
Done processing details from Photos library.
Exporting 77017 photos to /Users/nicolas/Data/Media/Photos/iCloudV6...
❌  exiftool error for file /Users/nicolas/Data/Media/Photos/iCloudV6/2023/06/27/IMG_0397.HEIC: Error:  Maker notes could not be parsed - /var/folders/tt/lwk18t610zb56yzgvkc7w3y00000gn/T/osxphotos_export_18ksjt6d/EF281732-23C2-4F0F-95E0-FC25138D0C32_exiftool.heic
❌  Error exporting photo (EF281732-23C2-4F0F-95E0-FC25138D0C32: IMG_0397.HEIC) as /Users/nicolas/Data/Media/Photos/iCloudV6/2023/06/27/IMG_0397.HEIC: Error:  Maker notes could not be parsed - /var/folders/tt/lwk18t610zb56yzgvkc7w3y00000gn/T/osxphotos_export_18ksjt6d/EF281732-23C2-4F0F-95E0-FC25138D0C32_exiftool.heic
❌  exiftool error for file /Users/nicolas/Data/Media/Photos/iCloudV6/2023/08/14/IMG_3330.HEIC: Error:  Maker notes could not be parsed - /var/folders/tt/lwk18t610zb56yzgvkc7w3y00000gn/T/osxphotos_export_tr49eoho/7AA6CF67-0F20-4FE5-84FB-66AA64B650C1_exiftool.heic
❌  Error exporting photo (7AA6CF67-0F20-4FE5-84FB-66AA64B650C1: IMG_3330.HEIC) as /Users/nicolas/Data/Media/Photos/iCloudV6/2023/08/14/IMG_3330.HEIC: Error:  Maker notes could not be parsed - /var/folders/tt/lwk18t610zb56yzgvkc7w3y00000gn/T/osxphotos_export_tr49eoho/7AA6CF67-0F20-4FE5-84FB-66AA64B650C1_exiftool.heic
❌  exiftool error for file /Users/nicolas/Data/Media/Photos/iCloudV6/2023/11/22/IMG_4783.HEIC: Error:  Maker notes could not be parsed - /var/folders/tt/lwk18t610zb56yzgvkc7w3y00000gn/T/osxphotos_export_ieflom5e/CDEF6D6F-9453-4B79-9DF3-A4BE5E550BC9_exiftool.heic
❌  Error exporting photo (CDEF6D6F-9453-4B79-9DF3-A4BE5E550BC9: IMG_4783.HEIC) as /Users/nicolas/Data/Media/Photos/iCloudV6/2023/11/22/IMG_4783.HEIC: Error:  Maker notes could not be parsed - /var/folders/tt/lwk18t610zb56yzgvkc7w3y00000gn/T/osxphotos_export_ieflom5e/CDEF6D6F-9453-4B79-9DF3-A4BE5E550BC9_exiftool.heic
❌  exiftool error for file /Users/nicolas/Data/Media/Photos/iCloudV6/2023/03/19/IMG_7726.HEIC: Error:  Maker notes could not be parsed - /var/folders/tt/lwk18t610zb56yzgvkc7w3y00000gn/T/osxphotos_export_zwave8tz/FF5D333C-2DAC-4C9E-A825-6D364C0BDBF8_exiftool.heic
❌  Error exporting photo (FF5D333C-2DAC-4C9E-A825-6D364C0BDBF8: IMG_7726.HEIC) as /Users/nicolas/Data/Media/Photos/iCloudV6/2023/03/19/IMG_7726.HEIC: Error:  Maker notes could not be parsed - /var/folders/tt/lwk18t610zb56yzgvkc7w3y00000gn/T/osxphotos_export_zwave8tz/FF5D333C-2DAC-4C9E-A825-6D364C0BDBF8_exiftool.heic
❌  exiftool error for file /Users/nicolas/Data/Media/Photos/iCloudV6/2023/06/25/IMG_9955.HEIC: Error:  Maker notes could not be parsed - /var/folders/tt/lwk18t610zb56yzgvkc7w3y00000gn/T/osxphotos_export_bdpysp89/614DBD06-68E6-49BA-A2E1-D4519A6EAED9_exiftool.heic
❌  Error exporting photo (614DBD06-68E6-49BA-A2E1-D4519A6EAED9: IMG_9955.HEIC) as /Users/nicolas/Data/Media/Photos/iCloudV6/2023/06/25/IMG_9955.HEIC: Error:  Maker notes could not be parsed - /var/folders/tt/lwk18t610zb56yzgvkc7w3y00000gn/T/osxphotos_export_bdpysp89/614DBD06-68E6-49BA-A2E1-D4519A6EAED9_exiftool.heic
❌  exiftool error for file /Users/nicolas/Data/Media/Photos/iCloudV6/2022/11/04/IMG_5945.HEIC: Error:  Maker notes could not be parsed - /var/folders/tt/lwk18t610zb56yzgvkc7w3y00000gn/T/osxphotos_export_qrvbkv6r/65CDBFB7-0AEB-4507-9942-CA4FB3E51E1A_exiftool.heic
❌  Error exporting photo (65CDBFB7-0AEB-4507-9942-CA4FB3E51E1A: IMG_5945.HEIC) as /Users/nicolas/Data/Media/Photos/iCloudV6/2022/11/04/IMG_5945.HEIC: Error:  Maker notes could not be parsed - /var/folders/tt/lwk18t610zb56yzgvkc7w3y00000gn/T/osxphotos_export_qrvbkv6r/65CDBFB7-0AEB-4507-9942-CA4FB3E51E1A_exiftool.heic
❌  exiftool error for file /Users/nicolas/Data/Media/Photos/iCloudV6/2023/07/18/IMG_2169.HEIC: Error:  Maker notes could not be parsed - /var/folders/tt/lwk18t610zb56yzgvkc7w3y00000gn/T/osxphotos_export_g799gyu2/060E3E6C-A0F2-4482-8234-2968DAD6A829_exiftool.heic
❌  Error exporting photo (060E3E6C-A0F2-4482-8234-2968DAD6A829: IMG_2169.HEIC) as /Users/nicolas/Data/Media/Photos/iCloudV6/2023/07/18/IMG_2169.HEIC: Error:  Maker notes could not be parsed - /var/folders/tt/lwk18t610zb56yzgvkc7w3y00000gn/T/osxphotos_export_g799gyu2/060E3E6C-A0F2-4482-8234-2968DAD6A829_exiftool.heic
❌  exiftool error for file /Users/nicolas/Data/Media/Photos/iCloudV6/2022/12/03/IMG_6364.HEIC: Error:  Maker notes could not be parsed - /var/folders/tt/lwk18t610zb56yzgvkc7w3y00000gn/T/osxphotos_export_nwsziv2v/4AA68208-4055-443C-9C31-D5586C30F6C5_exiftool.heic
❌  Error exporting photo (4AA68208-4055-443C-9C31-D5586C30F6C5: IMG_6364.HEIC) as /Users/nicolas/Data/Media/Photos/iCloudV6/2022/12/03/IMG_6364.HEIC: Error:  Maker notes could not be parsed - /var/folders/tt/lwk18t610zb56yzgvkc7w3y00000gn/T/osxphotos_export_nwsziv2v/4AA68208-4055-443C-9C31-D5586C30F6C5_exiftool.heic
❌  exiftool error for file /Users/nicolas/Data/Media/Photos/iCloudV6/2023/06/06/IMG_9279.HEIC: Error:  Maker notes could not be parsed - /var/folders/tt/lwk18t610zb56yzgvkc7w3y00000gn/T/osxphotos_export_wm1wpprv/2CB9394B-9CA0-4FB2-ADF2-EFBFD62E64B8_exiftool.heic
❌  Error exporting photo (2CB9394B-9CA0-4FB2-ADF2-EFBFD62E64B8: IMG_9279.HEIC) as /Users/nicolas/Data/Media/Photos/iCloudV6/2023/06/06/IMG_9279.HEIC: Error:  Maker notes could not be parsed - /var/folders/tt/lwk18t610zb56yzgvkc7w3y00000gn/T/osxphotos_export_wm1wpprv/2CB9394B-9CA0-4FB2-ADF2-EFBFD62E64B8_exiftool.heic
Something went wrong and osxphotos encountered an error:
'ExportDB' object has no attribute 'write_to_disk'
Crash log written to '/private/tmp/testosxphotos/osxphotos_crash.log'
Please file a bug report at https://github.com/RhetTbull/osxphotos/issues with the crash log attached.
osxphotos_crash.log

You've found a bug in the current branch of osxphotos. I see where the problem is and will fix it in next release. Please use the most recent released version (e.g. using pipx) instead of the version you built from the source.

@all-contributors please add @nicad for bugs

Ok so I had tried to upgrade through pipx but there was some kind of issues where it was stuck with a 1 year old version. After some fighting I got the latest osxphotos installed through pipx and it's working now ! Thank you !
The only issue is that I'm still getting these warnings:
exiftool error for file /Users/nicolas/Data/Media/Photos/iCloudV6/2022/11/21/IMG_6132.HEIC: Error:  Maker notes could not be parsed - /var/folders/tt/lwk18t610zb56yzgvkc7w3y00000gn/T/osxphotos_export_1cgxi1n4/F1402A7C-35E3-4703-9E1A-2AE790019B1F_exiftool.heic
They are not high priority because I have the files which is the most important but should I file a bug for it ?
I'm also seeing re-export when nothing has changed, do you want me to investigate it more while I'm at it ? or there are too many situations where Photos/icloud does weird things ?
Last question: is thre a way to make a donation for your work on osxphotos ? I really value it, I can leverage the Apple ecosystem without giving up control over my photos. Thanks to your work figuring the constant changes of the Photo app.

Glad you got pipx upgraded. I appreciate the help running the tests.

The only issue is that I'm still getting these warnings:

The exiftool errors are caused by exiftool not being able to read the file. This happens with some files depending on how they were generated. Please verify the file /Users/nicolas/Data/Media/Photos/iCloudV6/2022/11/21/IMG_6132.HEIC exists and can be opened. If so, then there's no issue -- osxphotos should detect the exiftool errors and copy the file without the exiftool updates. If the file is missing or corrupt, let me know because that would be a bug.

I'm also seeing re-export when nothing has changed,

That shouldn't happen with the settings you're using (assume they're the same as what was in the crash log).  If it is then there may be a bug.  If you can narrow down a specific file and give me the UUID for it I can give you some debug commands to run to try to get to the bottom of it.  The UUID will be printed in the output when using --verbose or you can find the photo in Photos, select it, then run osxphotos uuid.

Last question: is there re a way to make a donation for your work on osxphotos ?

I appreciate that very much but I don't currently accept donations for osxphotos. I'm glad it's useful for you though! I'm working on a small GUI to automatically run osxphotos export commands periodically and am thinking of making that "shareware" so you can purchase a license if you want to support osxphotos work. Will be some time before it's ready.

yes '/Users/nicolas/Data/Media/Photos/iCloudV6/2022/11/21/IMG_6132.HEIC' is there and readable.
So the first time I ran export all photos got re-exported (even though destination at almost all the files but this is the first successful post Sonoma upgrade export), 2nd export there were still a lot of updated photos and 3rd export was ok:
Processed: 77021 photos, exported: 36, updated: 20926, skipped: 52304, updated EXIF data: 20962, missing: 4616, error: 838, touched date: 20949
Elapsed time: 0:35:13
Processed: 77021 photos, exported: 0, updated: 387, skipped: 72879, updated EXIF data: 387, missing: 4616, error: 171, touched date: 387
Elapsed time: 0:09:29
I tried verbose but with 72k files it's too much output and now sync seems ok. I'll dig into it next time I get a chance.
I'll get a license of the GUI version even though I don't need it directly, I run osxphotos as part of a backup scripts so CLI is perfect for me. But it could fit family members for example and I certainly want to support osxphotos for the future.

updated: 20926, skipped: 52304, updated EXIF data: 20962,

The fact that the updated # is the same as updated EXIF means that osxphotos detected that some metadata changed in Photos that caused it to determine that an update was needed. It's unusual that so many photos should change at once. This can happen if you're using Photos labels/categories (which are assigned automatically by Photos) are used as keywords in the EXIF data as these can change when  Photos reprocesses the photos. However it doesn't appear you're doing that.

but this is the first successful post Sonoma upgrade export

It could be something to do with the upgrade and reprocessing done by Photos post upgrade.

So the first time I ran export all photos got re-exported (even though destination at almost all the files but this is the first successful post Sonoma upgrade export), 2nd export there were still a lot of updated photos and 3rd export was ok:

If you continue to have issues with files being re-exported when you think they shouldn't be, please open a new issue. I'm closing this one as the write_to_disk problem has been fixed in osxphotos v0.65.0