[HOLD for payment 2023-10-25] [$1000] Chat - Emoji suggestion list does not disappear when typing :+1: in the composer

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Action Performed:

Go to https://staging.new.expensify.com/
Go to any conversation
Type :+1: in the composer

Expected Result:
When the emoji is rendered, the emoji suggestion list will disappear
Actual Result:
When the emoji is rendered, the emoji suggestion list does not disappear
Workaround:
Unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[ ] Android / native
[x] Android / Chrome
[ ] iOS / native
[ ] iOS / Safari
[ ] MacOS / Chrome / Safari
[ ] MacOS / Desktop

Version Number: <IP_ADDRESS>
Reproducible in staging?: Yes
Reproducible in production?: Yes
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation
https://github.com/Expensify/App/assets/78819774/a92a37be-3fe5-43db-89df-7d5191b6f978
Expensify/Expensify Issue URL:
Issue reported by: Applause - Internal Team
Slack conversation:
View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~01c88e94973fd21352
Upwork Job ID:<PHONE_NUMBER>638490624
Last Price Increase: 2023-07-12

The external label has been added.

Just to add to @allroundexperts proposal, the reason onSelectionChange is not called on Android is because onSelectionChange is called after OnChangeText on Android whereas on others platforms it is called before. And the selection doesn't change because the length of ":+1" is 3 and the length of "👍 " is also 3.

@aimane-chnaif what are your thoughts here?

Friendly bump @aimane-chnaif

@aimane-chnaif just checking if you need any help?

Cool I put this on hold and added it to the tracking issue so will now switch it monthly to wait until we can revisit this.

Was meant to update a different issue and updated this one by mistake. We're still waiting for @aimane-chnaif here.

@allroundexperts are you able to answer the above question or update your proposal?

@aimane-chnaif do you have an update here? How can we move this forward?

@aimane-chnaif what are your thoughts on @ShogunFire's proposal?

But on some platforms onSelectionChanged is called after onChangeText.
Doesn't that answer this question ?

On native the selection (start end position) is changed before calling onChangeText so it goes to 4 before changing the text to 3 again

Because on web onChangeText is called before changing the selection and we change the text to a length of 3 before the selection is ever changed to 4, I think that's just how it works, you think our code is modifying this behaviour ?
I did find some issues on react native regarding similar  behaviours but they are closed:
https://github.com/facebook/react-native/issues/28865
https://github.com/microsoft/react-native-windows/issues/7740

Actually there is a difference between web and native in our code here:
https://github.com/Expensify/App/blob/25c8ae5212f433ea7679ba4bd040c79f151a282a/src/components/Composer/index.js#L237-L265
On web we calculate the position of the caret whereas we don't on native but I am not sure this is caused by this. To be honest on web I don't reproduce the issue, I only reproduce on mweb

I don't understand the question maybe...
On web onChangeText is called before onSelectionChange and in it we change ":+1:" to "👍 "
=> Both have the same lengths
=> Selection doesn't change
=> onSelectionChange is never called
Is your question "Why does onSelectionChange is called before onChangeText on native and not  on web ?" and do you think we should fix that (probably upstream) ?

I made a snack to show that when we change the text in onChangeText and keep the same length, onSelectionChange is never called on web whereas on android it is called:
Here is the snack:
https://snack.expo.dev/@moctrof/forlorn-truffle
On android:
https://github.com/Expensify/App/assets/19537677/ac66be6b-d275-4b20-b690-b6fcef708013
On web:
https://github.com/Expensify/App/assets/19537677/054e40c5-5e53-415a-bb25-2b4df6963be7

@aimane-chnaif how are things looking? Melvin is suggesting we take this internally, are we close to a proposal or should I move this to our engineering team?

Hey @aimane-chnaif,
I am Mohammed, an experienced full-stack developer and worked as SWE engineer intern at Google and Meta and currently working remotely as an SWE intern at a Fintech company in Dubai.
I am curious if this is still open. I would be more than happy to help with the root cause of this issue and collaborate on the same business day to fix it
Let me know if it is the case!
Mohammed

Hello @aimane-chnaif Is my explanation of the root cause enough to be Assigned ? Otherwise what else do you want me to do ?

Just to get a hint for what you expect, do you agree with this :

And I think the behaviour on web is the good one, I think onSelectionChange should only be called after onChangeText and if the selection has really changed.

@aimane-chnaif do we have an update here?

Friendly bump here.

@aimane-chnaif it's past a week since you last updated this issue. Can you please give an update? Thanks!

@aimane-chnaif please update this today.

Hey, I’m Michał from Software Mansion, an expert agency, and I will help close this issue out.

Hi, @ShogunFire thanks for the proposal. After some investigation, I agree with @aimane-chnaif that the root cause you described is not correct for this issue. I tested all platforms and on each of them onSelectionChange is launching after onChangeText. On iOS and Android this feature works but on the web and mobile web it doesn't. Maybe it changed after updating react-native to 0.72.3 but it is not a root cause

@Skalakid I am still able to reproduce onSelectionChange not being called
https://github.com/Expensify/App/assets/19537677/27a0e241-745e-438c-b7df-f0c20b156732

And yes on android/ios it is called after but also before it is called twice. one time for :+1: and the other time for the smiley

@ShogunFire oh thanks for the comment I think misunderstood you, sorry. In this case, I can agree with you. On android/ios onSelectionChange is called twice but on the web devices never 😅

However I'm not sure about the solution

@ShogunFire how about changing this.setState({suggestedEmojis: [],}); to this.calculateEmojiSuggestion();? @aimane-chnaif what do you think about it?

(Thanks @aimane-chnaif <3 )

Put this on hold and switched it to wweekly.

@aimane-chnaif I think we can take it off hold since https://github.com/Expensify/App/pull/18648 was merged. The bug still occurs, so I checked the changes and updated my proposal

@aimane-chnaif bump

@aimane-chnaif @flaviadefaria bump

@flaviadefaria can you remove hold tag, please?

@aimane-chnaif were you able to reevaluate proposals again?

Done! @aimane-chnaif what do you think about the submitted proposals?

@aimane-chnaif bump

Ok please give an update this week @aimane-chnaif thanks!

@aimane-chnaif bump

@aimane-chnaif should I assign this to another C+?

@trjExpensify  I'm going OoO for a week so assigning this to you so that you can move it forward in the meantime. I'll take it back from you once I'm online again. Thanks!

Question: Why does this have the internal label on it, and if we're soliciting proposals still, shouldn't it have help wanted?

Right, but if it didn't actually come internal and we're looking for proposals, we should change that otherwise people won't find it. Anyway, let's focus on this while we're here.
I can reproduce this issue on MacOS desktop, so its not an issue isolated to Android as stated above.
@Skalakid I'm curious with your proposal where the root cause identifies why this is only a problem we see with the :+1: emoji shortcut and not something like :heart:?

@trjExpensify There are other proposals before @Skalakid one that are very similar, for example mine here https://github.com/Expensify/App/issues/20998#issuecomment-1634587754 where the explaination of the root cause might be better. I also made some comments and a snack here: https://github.com/Expensify/App/issues/20998#issuecomment-1638116621

Gotttcha, this is helpful:

But on some platforms onSelectionChanged is called after onChangeText. And in onChangeText (updateComment for us) we change the text from ":+1" to "👍 " and both have the same length. Since they have the same length the selection doesn't change and onSelectionChanged is never called.

So this is actually a problem for any emoji shortcuts that have the same length. How bizarre! @aimane-chnaif this issue is hanging out, breaking WAQ, and sooo close to a proposal approval. Can you get to it today, please? Thanks!

@trjExpensify Yes the problem is that onSelectionChanged  works differently on web and native devices. On the web, the event is not being launched when you replace text with a different one of the same length. In our case, we change ":+1" to "👍 " and both have a length of 3. I updated the root cause in my proposal and the solution (since many things changed after merge freeze)

Thanks, @Skalakid! @aimane-chnaif can you take a look today please?

@aimane-chnaif bump

@aimane-chnaif can we get an update on progress since the 21st, please?

Bump, @aimane-chnaif.

@aimane-chnaif The proposal of @Skalakid is not up to date either because now emojis returned are not only new emojis.

Proposal
Updated
A proposal that handle the new emojis only and not all emojis of the text

So are we proceeding with that proposal?

Sure, happy to pop it on hold but can you perhaps elaborate a touch on the dependency? Do we expect it to be fixed by that PR? Will there be a bunch of conflicts if we don't wait? or something else?

Cool, thanks. Updated!

Thanks @trjExpensify! I'm back now so will take this off your plate.

Sounds good, all yours! ❤

Since this is on hold I'll switch to weekly.

@NicMendonca I'm officially no longer in the BugZero team so reassigning this as it will not close until tomorrow.

@aimane-chnaif  https://github.com/Expensify/App/pull/27687 has been merged, can you review my proposal?

Yes

@Li357 proposal for you! ^

Looks good @ShogunFire, all yours!

I was hoping that would recreate the since expired Upwork job 😄

@aimane-chnaif you hero!

can you both accept the offers please? 🙏

I accepted the offer

@aimane-chnaif just need you to accept the off please!

@ShogunFire you've been paid! 🎉

everyone has been paid! ✅

@NicMendonca Hello, sorry for the late request but could you put the upwork mission as completed ? Because it makes my upwork profile worse otherwise. Thanks

Hello, sorry for the late request but could you put the upwork mission as completed ? Because it makes my upwork profile worse otherwise. Thanks

I took care of this!


build: migrate from CRA to Vite 🎉

Hey lovely folks 👋 , I'm a long time fan of Excalidraw and I'm working on a live workshop showing folks how to migrate a fairly large application from CRA to Vite. I chose to try it out with this project since its built with CRA.
I was very excited to see it working with Vite and decided to put together this PR for everyone to check it out and see if its something worth considering.
Progress so far:

[x] Development build
[x] Production build
[x] Environment variables
[x] PWA support

Tests are still using react-scripts but I intend to explore getting Vitest to work.
Test:

yarn start Watch the blazingly fast HMR
yarn build Pretty darn fast too
yarn build:preview Build and serve a production version locally

Results:
CRA Build before

Vite Build after

Wow this is great @wesbragagt 🚀
We are considering trying out Vite very soon so thanks for picking this up ❤

@wesbragagt checking the PR, the env variables don't seem to work well eg REACT_APP_DEBUG_ENABLE_TEXT_CONTAINER_BOUNDING_BOX is not set to true even when its set to true in env.local, any idea why would that happen ?

@wesbragagt checking the PR, the env variables don't seem to work well eg REACT_APP_DEBUG_ENABLE_TEXT_CONTAINER_BOUNDING_BOX is not set to true even when its set to true in env.local, any idea why would that happen ?

Hum, it should pick that up. I will take a look. Likely the the way vite is picking up .env files.

@wesbragagt checking the PR, the env variables don't seem to work well eg REACT_APP_DEBUG_ENABLE_TEXT_CONTAINER_BOUNDING_BOX is not set to true even when its set to true in env.local, any idea why would that happen ?

Hum, it should pick that up. I will take a look. Likely the the way vite is picking up .env files.

@wesbragagt any update on this ?

@wesbragagt checking the PR, the env variables don't seem to work well eg REACT_APP_DEBUG_ENABLE_TEXT_CONTAINER_BOUNDING_BOX is not set to true even when its set to true in env.local, any idea why would that happen ?

Hum, it should pick that up. I will take a look. Likely the the way vite is picking up .env files.

@wesbragagt any update on this ?

Rethinking on this - I think its better we migrate to VITE_ prefix as suggested in official docs as thats recommended. The plugin vite-plugin-env-compatible I am not sure if its maintained well as its not working well with few env variables so its better we do it the VITE way

@excalibot trigger release

@excalibot trigger release

As I am trying out fully to migrate to Vite, its a big change and significantly different from this PR hence I will open a separate PR so its easier to visualise the diff and keep this open as well so if the full migration doesn't work out we can still merge with current state. Hence I will also revert the vite and webpack related changes in this PR and push it in a separate PR instead

@ad1992 Sounds like a good plan, I'm excited for the release!

Vite is merged so closing this in favour of https://github.com/excalidraw/excalidraw/pull/6713


"Tell me more" link on default index.html gives a 404 page instead of docs

The default page that you get when creating an Azure Mobile App or an Azure Web App (ref: https://i.stack.imgur.com/2KoDn.jpg) links to:
http://go.microsoft.com/fwlink/?LinkID=616909&clcid=0x409
.. which then redirects to:
https://docs.microsoft.com/en-us/azure/app-service/mobile/
.. which gives a 404 page not found error.
I believe this should instead redirect to:
https://docs.microsoft.com/en-us/azure/app-service-mobile/
(notice it should be a "-" instead of a "/" as in the url the user is redirect to)
This is the default index.html that every user sees, so seems of higher priority.

Thanks - I've updated the link so it should be pointing to the right place now.


Allow errorSchema to be passed into a form

Reasons for making this change
Fixes #155. Users should be able to control the errorSchema externally. For instance, if you receive errors from a server, you should be able to inject those errors into the form.
Checklist

[ ] I'm updating documentation

[ ] I've checked the rendering of the Markdown text I've added
[ ] If I'm adding a new section, I've updated the Table of Content

[x] I'm adding or updating code

[ ] I've added and/or updated tests
[ ] I've updated docs if needed
[x] I've run npm run cs-format on my branch to conform my code to prettier coding style

[x] I'm adding a new feature

[x] I've updated the playground with an example use of the feature

I'd also like to see tests. Does this merge the errors from the errorSchema prop with the errors generated by validation? It looks more like the validation errors replace the prop, which seems a bit strange to me.

If you have time to add some tests that would be fantastic! Please feel free to fork my fork and create a new PR on top of this one.

I'd also like to see tests. Does this merge the errors from the errorSchema prop with the errors generated by validation? It looks more like the validation errors replace the prop, which seems a bit strange to me.

Maybe it should be work like the formData props. The parent component should save on his state the errorSchema, like the FormData, and make the merge if it want, and pass the new errorSchema to mozilla react-json form.

I just saw your implementation and I like the idea of giving the server side error back to the form.
But about the code, I have suggestion which might be simpler to implement, test and maintain.
In order to get the server side error we have to submit the form and get the feedback. Why don't we use the same function to get back the errors as the props.onSubmit return. Here is my suggestion, in the Form.js, in the onSubmit function, after the validation and custom validation, it execute the props.onSubmit and here is where we can give back the server side error (if any) back to the original onSubmit function :
    setState(this, { errors: [], errorSchema: {} }, () => {
      if (this.props.onSubmit) {
        const {serverErrors, serverErrorSchema}  = this.props.onSubmit({ ...this.state, status: "submitted" });
        //new code
        //some how we have to be sure that the error objects returned from the props.submit function match the desired format
        if (serverErrors && serverErrorSchema) {
          setState(this, { errors: serverErrors, errorSchema: serverErrorSchema });
        }
        //new code end
      }
    });

what is the others opinion?

I don't like that because that's returning state via a callback rather than //passing// state via a prop (which is the typical way you pass state to another component in React). Also, I think users should be able to modify the errors whenever they want, not just on submit.

Hey guys! Whats holding this PR up? Anything I can do to help move it along? :)

This would solve #401 #757 #197 neatly!

@davidbarratt just checking on this? Tests would help see how exactly this feature is used.

Is there any update on this change ? @epicfaace

I'm sorry I don't have time to update this, if someone else would like to take it over, that would be great. :)

Is this PR still relevant in light of https://github.com/rjsf-team/react-jsonschema-form/issues/1389?

No, it's not. Thanks for pointing that out!


add $listeners to all components

right now it's not possible to add click events to certain components like vue-grid, vue-card, etc.
to change this we have to add v-on="$listeners" to the root element of these components.

we don't have to add v-on="$listeners" to all components, if you want to listen to events from the root element you can bind the event like this @click.native="onClick" to get the same behaviour


Support Delete Action in Source Bucket

And an option "Delete object in source after replication".
When customer enable this option, once there is an object being delete in the source, then it will also be deleted in the destination bucket.

supported


Cannot Start Omnisharp [ERROR] Error: spawn cmd ENOENT

Trying to open a Unity3d solution (sln). One that works fine on another machine with VSCode but does'nt start on another.

Moved to OmniSharp/omnisharp-vscode#32


Handle underlying change notifications?

Wow, your RepositoryKit looks really promising, thanks for all the work!!
I'm currently evaluating new ways in order to overhaul the architecture of quite a complex app. This app will have a local database as master repository (I'm opting for Realm).
How would I notify the UI about changes occured in the database using RepositoryKit? Does RepositoryKit support registering callbacks or something?
FYI: Here's the notification stuff from Realm: https://realm.io/docs/swift/latest/#notifications

Hey Marco, I'm glad to see you interested!
The way of doing that with collections is implementing a NSFetchedResultsController and its delegate (NSFetchedResultsControllerDelegate). On the example you can see how to do it. Basically, the CoreDataTableViewController is responsible of updating the UI when needed and the UsersTableViewController only has to configure the NSFetchedResultsController.
If you need the changes of a particular object, I would recommend you to implement an observer.
Right now, RepositoryKit is an organization layer.  Maybe, in a future, some fancy utils can be implemented.
I hope it has been helpful! Don't hesitate to ask if you have any other doubts!

Thanks for your detailed answers, I really appreciate them!

Right now, RepositoryKit is an organization layer.  Maybe, in a future, some fancy utils can be implemented.

I don't exactly understand what you mean by saying "RepositoryKit is an organization layer": Are you suggesting I'll should deal with the database change notifications directly from within my UI layer? Having the ViewController listening to change events using the storage layer API (NSFetchedResultsControllerDelegate)? From what I've understood this would violate the main goal of the repository pattern since this does not abstract away the storage layer?
I can see how this would be easier to implement, since no abstraction layer is added. But since I will have to deal with several different kinds of repositories, which hold their own subset of data and may change at any time, I'm not quite sure if this is the right way to go.
Or is this the way you are suggesting, because you put all data in the local repository first and have the UI dealing with only this repo anyway - and therefore you are willing to violate the pattern in favour of simplicity here?

Yeah, I understand that it's not completed abstracted, but it has a reasoning there. The Data Model (the graph) and the NSFetchedResultController are two really powerful tools of CoreData to use around your project.
On the other side, what it is really abstracted is the way to operate with the database (you forget how to CRUD, contexts, persistence, etc).
Or is this the way you are suggesting, because you put all data in the local repository first and have the UI dealing with only this repo anyway - and therefore you are willing to violate the pattern in favour of simplicity here?
Pretty nice described what I think here. I just trust that the local repo has the information that I need.


switch Shelly 3EM to new power_meter device type

@RubenKelevra Thanks!
But I suggest we do not merge yet, because otherwise the same issue will arise by all powercalc users having the Shelly 3EM which you mentioned here: https://github.com/bramstroker/homeassistant-powercalc/issues/2834
Let's wait a bit until I have the "per device" discovery working. That will solve for this case and all similar cases in the future.

Agreed :)

Closed in favour of #2867
Btw I have finished development of the per device discovery.


Gbt modelbuilder

Added a model builder for GBT

@Alexander-Makaryev could you review this PR please?

LGTM)
please add some examples/tests

@Alexander-Makaryev ,

LGTM)
please add some examples/tests

We're working on it. It'll be a part of another PR (#273 ) which is not ready yet.
Could you explicitly approve this PR?

@PetrovKP , could you merge this PR, as I don't have appropriate rights?


Docker container missing dependencies required for notifications

Description
Docker image cannot notify user.
If sudo npm install has not been done in container console

If sudo npm install has been run within container:

UnraidOS Docker

Thanks! I'll do some testing with the Docker image.


Fix daemonset arguments to match replication controller

The example DaemonSet as it exists causes the pod to crash on startup with the following:
Error syncing pod, skipping: failed to "StartContainer" for "nginx-ingress-lb" with RunContainerError: "runContainer: API error (500): Cannot start container 7eab41694a7d817665337724b5710bd17d7846f0212408aa9d6056e3211447a4: [8] System error: exec: "/nginx-ingress-controller-lb": stat /nginx-ingress-controller-lb: no such file or directory\n"
Modifying the arguments to match the replication controller works.

I signed it!

Oh, thanks a lot. LGTM.

@wfhartford feel free to look for fingerprints around ingress/ and cc to get someones attention (13 days for such a tiny change is too long!)


modify the KVO function

The original KVO use runtime to hook UITextView’s dealloc method and
release. This method maybe cause a problem: When this category was
compile into a dynamic framework, and was used in other project which
also reference this category. In that case, the runtime hook two times,
and result is KVO not removed. This case can be reproduce in demo project: compile “UITextView+Placeholder.m” file in demo project and framework both.

@dourgulf, thanks for your work. I'll take a look this soon :+1:

nice, you are still focus on this project:)


⚠ AVS (kty) has degraded performance

In 8024d93, AVS (kty) (https://avus.com.br) experienced degraded performance:

HTTP code: 200
Response time: 10221 ms

Resolved: AVS (kty) performance has improved in 71797d0.


[proj] Disable docs

Describe the pull request

What does your PR fix?
Fixes #25497

Please convert this PR to draft, we need to wait for the discussion result of issue https://github.com/microsoft/vcpkg/issues/25497 to decide how to fix it. thanks.

Please convert this PR to draft, we need to wait for the discussion result of issue #25497 to decide how to fix it. thanks.

No discussion needed. I would have submitted the same PR.

Please convert this PR to draft, we need to wait for the discussion result of issue https://github.com/microsoft/vcpkg/issues/25497 to decide how to fix it. thanks.

Nicole confirmed the issue on Discord

Can you please use the official patch to fix this instead?
Thanks.

Can you please use the official patch to fix this instead?

The official patch will restore installation of man pages. Do we really want that?

Can you please use the official patch to fix this instead?
Thanks.

This would violate "Do not install docs by default".

Okay. LGTM.


Rewrote and refactored tests use TAP testing

Switched out old assert tests for TAP tests
Updated the package.json so npm test now works
Moved the functionality of general_tests into api_tests and deleted it
We now run api_tests which pulls in the test runner. This can be changed in the future

LGTM


{$file} ignored when launging python debugger for current file

Redirected from #224487
Type: Bug
As the title says: when I set a launch.json file and try to debug my code (selecting "with launch.json", VScode returns:
[Errno 2] No such file or directory: 'home/[myusername]/.local/lib
This is making debugging code outside mine (justMyCode=false) impossible, and is very annoying. What's going on?
Note: I use conda, and I have correctly selected my interpreter to be conda.
 Basically:

debugJustMyCode: true ---> the debugger works fine (breakpoints are reached, etc)
debugJustMyCode: false ---> the debugger stops working at all, reaching the Errno 2 state.

Configuration used:
{
    // Use IntelliSense to learn about possible attributes.
    // Hover to view descriptions of existing attributes.
    // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Python Debugger: Current File",
            "type": "debugpy",
            "request": "launch",
            "program": "${file}",
            "console": "integratedTerminal",
            "justMyCode": false
        }
    ]
}

Error message seen:

Thanks for your bug report @irm-codebase, that was a bug in vscode related to justMyCode, can you try again and see if the error persist with the last version of vscode? Thanks

@paulacamargo25 tried with the config below. Errno 2 no longer happens... but justMyCode is ignored despite setting it to false in both launch.json and settings.json. I could not reach a random breakpoint I placed in the geopandas library.
Even VSCode is telling me that those settings are not being checked:

launch.json config:
{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Python Debugger: Current File",
            "type": "debugpy",
            "request": "launch",
            "program": "${file}",
            "console": "integratedTerminal",
            "justMyCode": false
        }
    ]
}

settings.json:
{
    "debugpy.debugJustMyCode": false
}

@karthiknadig since the bot asked... this bug is till present in the newest VSCode version.
Setting justMyCode to false results in errno2

The justMyCode issue here seems like something internal to debugpy. Move to debugpy for more investigation.


Add a "use_month_year_dates" option to document lists

What
Adds an option to change the date format for document lists to only show the month and year.
Why
We have things where dates are provisional, like statistics announcements.  These all have a timestamp for the 1st of the chosen month, but may not actually be released on that day - they can be released any time in the month.  So displaying the day is incorrect.
Statistics announcements pages display dates like so: https://www.gov.uk/government/statistics/announcements/local-authority-revenue-expenditure-and-financing-england-2019-to-2020-provisional-outturn
This change is so that search pages can be consistent: https://www.gov.uk/search/research-and-statistics?content_store_document_type=upcoming_statistics&organisations[]=ministry-of-housing-communities-and-local-government
Visual Changes
No change to existing behaviour.  The new thing looks like this:

View Changes
https://govuk-publishing-compo-pr-1053.herokuapp.com/component-guide/document_list

Closing this as we've found a way to handle statistics announcements that works in all cases, not just in cases where the date is "any time within this one month"


⚠ Bofrost.at has degraded performance

In fd6e5ad, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1502 ms

Resolved: Bofrost.at performance has improved in 1ff3575.


scaffolding

See https://github.com/TakesxiSximada/sximada.djangoutils/issues/1

Thanks!! This pull request is merged.
Until the new version 1.0.dev0 is released, please wait for a while. https://github.com/TakesxiSximada/sximada.djangoutils/pull/3


Repl demo does not work anymore...

Hi,
I just gave it a try this morning, and get this error :
ImportError: cannot import name 'six' from 'django.utils' (/home/runner/.local/share/virtualenvs/python3/lib/python3.7/site-packages/django/utils/__init__.py)

BR

Same issue is live demo hosted on repl site: https://dal--jpic.repl.co

Yep I know, I'm working on my own repl-ish replacement (actually it's a replacement for Ansible/Docker/Compose that also provides a server you can register your git against).

Here to report the same. Guess its a bump.

Fixed in 824a20f985a6761a94692e820bbac9bb6e9e3029


Add support for Renesas Starter Kit+ for RZ/T2M

This PR adds support for a new board - rzt2m_starter_kit.
Changes include:

rzt2m_starter_kit Board,
renesas_rzt2m SoC,
UART driver,
PINCTRL driver,
GPIO driver.

it seems the comments are now resolved, @dcpleung can you take another look at this PR?


The project requires C++17

Ideally I'd want all the projects to only require C++11.

Only C++11 is now required.


Unable to build

I’m just getting started here so maybe it’s just my setup. Right now I get this error when I try to build vapor:
Cloning https://github.com/tannernelson/vapor.git
Using version 0.1.4 of package vapor
error: rename error: File exists (17): /var/www/vapor/Packages/vapor -> /var/www/vapor/Packages/vapor-0.1.4

This Ubuntu 14.04 with clang, git, libicu-dev installed. Swift 2.2 from January 11 is installed too.

Try rm -rf Packages
I think this is an error with SPM.

No changes. Still the same error.

From Ubuntu 14.04
tanner@Albert:~/test$ git clone git@github.com:tannernelson/vapor-example.git
Cloning into 'vapor-example'...
remote: Counting objects: 154, done.
remote: Compressing objects: 100% (72/72), done.
remote: Total 154 (delta 37), reused 0 (delta 0), pack-reused 77
Receiving objects: 100% (154/154), 3.59 MiB | 0 bytes/s, done.
Resolving deltas: 100% (69/69), done.
Checking connectivity... done.
tanner@Albert:~/test$ cd vapor-example/
tanner@Albert:~/test/vapor-example$ swift build
Cloning https://github.com/tannernelson/vapor.git
Using version 0.1.4 of package vapor
Compiling Swift Module 'Vapor' (18 sources)
Linking Library:  .build/debug/Vapor.a
Compiling Swift Module 'VaporApp' (2 sources)
Linking Executable:  .build/debug/VaporApp
tanner@Albert:~/test/vapor-example$

I am running Swift 3.0, but that shouldn't be changing anything. I was using 2.2 just a few days ago.
tanner@Albert:~/test/vapor-example$ swift --version
Swift version 3.0-dev (LLVM f95d47afa7, Clang f66c5bb67b, Swift b745691a38)
Target: x86_64-unknown-linux-gnu

I forgot to say that I’m running Ubuntu using vagrant maybe it’s an issue with file sharing?
In the meantime I’m running Vapor from OS X, works great. 👍

I've successfully used it on Ubuntu 15.10 with VirtualBox.
But possibly if you're mapping the files using Vagrant that could be creating an issue. Maybe some permissions stuff. Try cloning it in a non-shared directory and see if that works.
Glad to hear it's working on OS X. :)

Yeah i'm also having the same vagrant issue

The Swift Package Manager is still in its early phases. :\
Swift has a bug tracker at https://bugs.swift.org/secure/Dashboard.jspa You should report your Vagrant setup (config files, version, etc) there alongside the full error message.
The main SPM repository is here https://github.com/apple/swift-package-manager

@redgluten you just need to set your shared folder on your host OS to chmod 777

@hex20 great find.

@hex20 Ok I’ll try that thanks.


Get "verified" badge for msys2/setup-msys2 on github marketplace

I stepped into the problem that I can't use msys2/setup-msys2 action within some (public open source) repositories. Specifically, it occurs that organizations, especially enterprise organization, might limit actions usage within organization. One of the limiter here is to allow actions "verified in the GitHub Marketplace". To me this occurred on https://github.com/intel/cloud-streaming/pull/67. Failed workflow is not rendered on main PR page, need to look into actions tab (see https://github.com/intel/cloud-streaming/actions/runs/7123274817):

msys2/setup-msys2@v2 is not allowed to be used in intel/cloud-streaming. Actions in this workflow must be: within a repository owned by intel, created by GitHub, or verified in the GitHub Marketplace.

My usage for msys2/setup-msys2 action was to build ffmpeg which is a dependency for my project. I believe that's quite legitimate usage since that's the recommended way to build ffmpeg for Windows [1].
I think that getting "verified" badge, if possible, would be beneficial for both msys2 and greater community since it will allow to promote and scale msys2 usage for the wider audience. Can we try to obtain "verified" badge for msys2?
Unfortunately, I don't have any experience in the area of how to get such a badge. From a quick search, I see [2]. Quoting:

Actions with the , or verified creator badge, indicate that GitHub has verified the creator of the action as a partner organization. Partners can email<EMAIL_ADDRESS>to request the verified creator badge.

I.e. as it seems this points to Github Partners program, whatever it is: https://partner.github.com/.
[1] https://ffmpeg.org/platform.html#Windows
[2] https://docs.github.com/en/actions/creating-actions/publishing-actions-in-github-marketplace#about-badges-in-github-marketplace

I've sent them an email, let's see.

They told me that the first requirement is to become a "Technology Partner" via https://partner.github.com/technology-partners#form-signUp, which is only possible for companies.

I'll leave this open as a reminder, but it's unlikely that can do anything about this in the near future.

They told me that the first requirement is to become a "Technology Partner" <...> which is only possible for companies.

Something I was afraid of. Thank you for update.


Avocet 2.0

The textual logic is drastically simplified with OptionList, which didn't exist when I first wrote this app. Using a sqlite db instead of dictionaries, which is much faster after the initial db is set up.


[Issue #4427] Implement transaction message escape of RIP 32

Make sure set the target branch to develop
PS: Target branch is 5.0.0-beta cause there is no EscapeBridge in develop branch
What is the purpose of the change
Implement transaction message escape of RIP  32
Issue #4427
Brief changelog
Design can be found in Issue #4427 .
Verifying this change
Test TransactionSlaveActingMasterIT added to Test Module.
Follow this checklist to help us incorporate your contribution quickly and easily. Notice, it would be helpful if you could finish the following 5 checklist(the last one is not necessary)before request the community to review your PR.

[x] Make sure there is a Github issue filed for the change (usually before you start working on it). Trivial changes like typos do not require a Github issue. Your pull request should address just this issue, without pulling in other changes - one PR resolves one issue.
[x] Format the pull request title like [ISSUE #123] Fix UnknownException when host config not exist. Each commit in the pull request should have a meaningful subject line and body.
[x] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
[x] Write necessary unit-test(over 80% coverage) to verify your logic correction, more mock a little better when cross module dependency exist. If the new feature or significant change is committed, please remember to add integration-test in test module.
[x] Run mvn -B clean apache-rat:check findbugs:findbugs checkstyle:checkstyle to make sure basic checks pass. Run mvn clean install -DskipITs to make sure unit-test pass. Run mvn clean test-compile failsafe:integration-test  to make sure integration-test pass.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

Good job, But does your contribution overlap with this issue? https://github.com/apache/rocketmq/issues/4408

Pls check why the test failed.

Pls check why the test failed.

I didn't meet this error when running test. And also you can find the test passed in the Travis CI - Pull Request build detail, line 3086.
https://app.travis-ci.com/github/apache/rocketmq/jobs/572672220

yep, you can re trigger the ci

It's a bit puzzling to process message escape when processing messages that should be discarded. Hopefully you could provide more details about your design.

Actually it's like the remote message escape mechanism. When discarding messages, Rocket MQ puts messages into RMQ_SYS_TRANS_CHECK_MAX_TIME_TOPIC, which is a not allowed to send topic in topic validator. For the remote escape of these messages, first wrap them in their origin topic with transaction check time, and send it to other master broker. As messages bring PROPERTY_TRANSACTION_CHECK_TIMES with them, master broker received these message first put them into half topic queue and discard them in next check.
应丢弃的消息逃逸机制和正常消息的逃逸机制相似。为了避免RMQ_SYS_TRANS_CHECK_MAX_TIME_TOPIC远程不可写的限制，首先将半消息用原Topic包装，此时消息仍携带PROPERTY_TRANSACTION_CHECK_TIMES属性，然后再投递到远程主节点上。收到消息的主节点将消息放入半消息队列RMQ_SYS_TRANS_HALF_TOPIC等待检查，在下一次检查中，将消息丢弃。

Codecov Report

Merging #4428 (55e7384) into 5.0.0-beta (42e5d73) will decrease coverage by 0.07%.
The diff coverage is 10.25%.

@@               Coverage Diff                @@
##             5.0.0-beta    #4428      +/-   ##
================================================
- Coverage         43.14%   43.07%   -0.08%
+ Complexity         6064     6055       -9
================================================
  Files               801      801
  Lines             57087    57123      +36
  Branches           7805     7811       +6
================================================
- Hits              24633    24607      -26
- Misses            29231    29287      +56
- Partials           3223     3229       +6

Impacted Files
Coverage Δ

.../apache/rocketmq/broker/failover/EscapeBridge.java
11.62% <0.00%> (+1.47%)
:arrow_up:

...ion/AbstractTransactionalMessageCheckListener.java
65.90% <0.00%> (-4.83%)
:arrow_down:

...ueue/DefaultTransactionalMessageCheckListener.java
76.47% <0.00%> (-7.91%)
:arrow_down:

...saction/queue/TransactionalMessageServiceImpl.java
49.37% <0.00%> (-0.63%)
:arrow_down:

.../transaction/queue/TransactionalMessageBridge.java
67.82% <13.79%> (-8.75%)
:arrow_down:

...apache/rocketmq/broker/longpolling/PopRequest.java
31.03% <0.00%> (-13.80%)
:arrow_down:

...ava/org/apache/rocketmq/filter/util/BitsArray.java
59.82% <0.00%> (-2.57%)
:arrow_down:

...va/org/apache/rocketmq/logging/inner/Appender.java
30.33% <0.00%> (-2.25%)
:arrow_down:

...a/org/apache/rocketmq/filter/util/BloomFilter.java
59.13% <0.00%> (-2.16%)
:arrow_down:

...rocketmq/client/impl/factory/MQClientInstance.java
45.64% <0.00%> (-1.39%)
:arrow_down:

... and 9 more

Continue to review full report at Codecov.

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

Coverage decreased (-0.02%) to 47.287% when pulling 55e7384e77bfc5525fafcf056af51fd425c2eb29 on 6U-U9:5.0.0-beta into 42e5d734eec8ed662fb6c9b06ff1faf615559653 on apache:5.0.0-beta.

Coverage decreased (-0.02%) to 47.287% when pulling 55e7384e77bfc5525fafcf056af51fd425c2eb29 on 6U-U9:5.0.0-beta into 42e5d734eec8ed662fb6c9b06ff1faf615559653 on apache:5.0.0-beta.

org.apache.rocketmq.broker.transaction.queue.DefaultTransactionalMessageCheckListener#resolveDiscardMsg handles transactional messages that should not be processed any more, what about normal transactional messages on the slave broker in acting master mode?
Furthermore, what happened if the broken master recovered?

org.apache.rocketmq.broker.transaction.queue.DefaultTransactionalMessageCheckListener#resolveDiscardMsg handles transactional messages that should not be processed any more, what about normal transactional messages on the slave broker in acting master mode? Furthermore, what happened if the broken master recovered?

When dealing with transaction message normally, transactionalMessageCheckService checks half messages in RMQ_SYS_TRANS_HALF_TOPIC,  calls putBackHalfMsgQueue to rewrite messages still need to check back to message queue of RMQ_SYS_TRANS_HALF_TOPIC , and updates consume offset.
When slave acts master, its transactionalMessageCheckService will start, but its EndTransactionProcessor will not accept any message tries to end a transaction such as commit or rollback. The running transactionalMessageCheckService will check transaction message and send any message needs check to a living master. RMQ_SYS_TRANS_HALF_TOPIC is also a topic not allowed to send in topic validator.So first wrap them in their origin topic with transaction check time, and send it to other master broker. Messages will bring its properties, such as PROPERTY_TRANSACTION_CHECK_TIMES , so master broker received these message is not going to check the transaction message for another TRANS_CHECK_MAX_TIME.
When the master broker recovers, it will be in pre-online progress before it is launched. It reversely obtains the metadata of the slave, especially the consumer offset of RMQ_SYS_TRANS_HALF_TOPIC. Thus the recovered master broker will not check the message which has escaped.
在正常处理事务消息时，transactionalMessageCheckService检查半消息队列RMQ_SYS_TRANS_HALF_TOPIC中的半消息，并调用putBackHalfMsgQueue将检查到的并且仍需进行检查的消息写入半消息队列RMQ_SYS_TRANS_HALF_TOPIC中，并更新消费位置。
Slave代理Master时，transactionalMessageCheckService将启动。transactionalMessageCheckService将检查到的事务消息通过EscapeBridge向其他的Master逃逸。逃逸过程中为了避免半消息RMQ_SYS_TRANS_HALF_TOPIC不可写的限制，首先将半消息用原Topic包装，此时消息仍携带PROPERTY_TRANSACTION_CHECK_TIMES等属性，然后再投递到远程主节点上。收到消息的主节点将消息放入半消息队列RMQ_SYS_TRANS_HALF_TOPIC等待检查。
在主节点恢复后，通过预上线机制获取从节点的RMQ_SYS_TRANS_HALF_TOPIC队列的消费位点，更新主节点自己的RMQ_SYS_TRANS_HALF_TOPIC队列的消费位点，将不再检查已经逃逸的事务消息。


#6 updating lorem text with correct size and log output

Apparently the site that I was using for generating the text it only generated 100K, I am using new generator

Now the payload is >= 300K


fix for react/redux app with Immutable js

hey! for some reason I can not create PR.
please verify and add update code when you get a chance:
in method "syncTranslationWithStore" replace
store.getState().i18n
to

store.getState().i18n ? store.getState().i18n.translations : store.getState().toJS().i18n.translations;

I am just looking into this issue as well. I want to use both redux-immutable and read-redux-i18n, but can't seem to find a way around.


Reference field to non-existing entity cannot be edited

First of all, thank you for this great piece of software.
Prerequisites
I am using the master branch.
I have a table (devices) that contains a simple reference to (a primary key of) another table (applications).
    var devices = nga.entity('devices')
        .identifier(nga.field('deveui'));
    var applications = nga.entity('applications')
        .identifier(nga.field('name'));

    devices.editionView().fields([
        nga.field('app', 'reference')
            .targetEntity(applications)
            .targetField(nga.field('name'))
            .validation({ required: true }),
   ...

Description
When I delete the applications entry that was referenced in some of the devices the ng-admin doesn't allow me to modify the affected devices and update the reference.
Steps to Reproduce

Create an application A
Create a device D and reference the application A
Delete the application A and create application B
Now edit the device D and try to update the reference to (non-existing) A and change it to (existing) B

Expected behavior: In the Edit Device dialog I would expect to see a drop-down box listing valid references, select B and submit. The standard behaviour.
Actual behavior:

If the referenced application does not exist, the drop-down list of references remains empty. According to the debugging console the ng-admin fails to GET the referenced A and says no element found. It GETs the valid references, but (probably due to the previous error) does not display them. Hence I cannot select a valid reference.
When trying to submit the dialog nothing happens but no error is displayed. The debugging console says Error: notification is not defined. I even cannot enter the correct reference manually: nothing happens, no error shown.

ng-admin assumes that you cascade deletes on the API side. Handling all cases where your data integrity isn't preserved is outside of the ng-admin scope.


Issue #1150: Attempt to fix the invalid date in the dialog for the empty datetime value

The issue is that if the datetime field has an empty value, moment format method will return "Invalid date". The fix is to check first if the date object is valid. If invalid, it should return value as is without modifying.

Coverage remained the same at 31.042% when pulling 40323829db936c36feeb714d4ece1d20894cd2de on victor994:feature/fix-invalid-date-in-dialog into 32b11eea89a5e89a29337f3ea0e407d146ec39fc on Adobe-Consulting-Services:master.

Coverage remained the same at 31.042% when pulling 40323829db936c36feeb714d4ece1d20894cd2de on victor994:feature/fix-invalid-date-in-dialog into 32b11eea89a5e89a29337f3ea0e407d146ec39fc on Adobe-Consulting-Services:master.

Coverage remained the same at 31.042% when pulling a23a97ba37450697a9986c304c446e7f03325365 on victor994:feature/fix-invalid-date-in-dialog into 32b11eea89a5e89a29337f3ea0e407d146ec39fc on Adobe-Consulting-Services:master.

Thanks!

no problems. can you please advise when the next release will be?


.ruby-version is ignored if it's not in the working directory

Hey! I was looking forward to removing the TargetRubyVersion from my config with the 0.41 release so that it could just use the existing declaration in my .ruby-version file, however I've had a problem since doing so. Although everything worked fine when using RuboCop from the command line I was getting syntax errors (when my files had keyword arguments) with the linter-rubocop plugin for Atom.
I've now realised the problem is because linter-rubocop executes rubocop from in the directory of the file you're running it on, and when doing so it's not picking up the .ruby-version file as it should. I can now replicate this behaviour from the console, like so:
$ rubocop app/models/user.rb
Inspecting 1 file
.

1 file inspected, no offenses detected
$ cd app/models
$ rubocop user.rb
Inspecting 1 file
E

Offenses:

user.rb:1:1: E: class definition in method body
(Using Ruby 2.0 parser; configure using TargetRubyVersion parameter, under AllCops)
class User < ActiveRecord::Base
^^^^^
user.rb:31:23: E: unexpected token tRPAREN
(Using Ruby 2.0 parser; configure using TargetRubyVersion parameter, under AllCops)
  def self.something(name:)
                      ^

1 file inspected, 2 offenses detected

I think the solution should be that RuboCop looks for the .ruby-version file in more than the current directory. If we don't want it to check every parent directory (like I would assume it does for the config file) then the minimum it should do is look in the same directory that it finds the config file in.
RuboCop version
$ rubocop -V
0.41.2 (using Parser <IP_ADDRESS>, running on ruby 2.3.1 x86_64-linux)

The issue applies from v0.41.0 all the way to master (cd7246f).

I think the solution should be that RuboCop looks for the .ruby-version file in more than the current directory. If we don't want it to check every parent directory (like I would assume it does for the config file) then the minimum it should do is look in the same directory that it finds the config file in.

Both solutions seem reasonable to me.


Don't report errors if some components don't have a nightly version.

Signed-off-by: Lonng<EMAIL_ADDRESS>
What problem does this PR solve?
download http://<IP_ADDRESS>:8989/pd-nightly-linux-amd64.tar.gz 37.35 MiB / 37.36 MiB 99.99% 993.56 KiB p/s
download http://<IP_ADDRESS>:8989/tidb-nightly-linux-amd64.tar.gz 41.06 MiB / 41.06 MiB 99.99% 885.73 KiB p/s
download http://<IP_ADDRESS>:8989/tikv-nightly-linux-amd64.tar.gz 131.15 MiB / 131.15 MiB 100.00% 927.64 KiB p/s
Error: the component `mirrors` does not have a nightly version; skipped
the component `playground` does not have a nightly version; skipped

What is changed and how it works?
Don't report errors if some components don't have a nightly version.

Codecov Report

Merging #272 into master will decrease coverage by 37.60%.
The diff coverage is 21.73%.

@@             Coverage Diff             @@
##           master     #272       +/-   ##
===========================================
- Coverage   61.22%   23.62%   -37.61%
===========================================
  Files          40       36        -4
  Lines        2298     2942      +644
===========================================
- Hits         1407      695      -712
- Misses        674     2153     +1479
+ Partials      217       94      -123

Flag
Coverage Δ

#coverage
?

Impacted Files
Coverage Δ

cmd/clean.go
18.91% <0.00%> (-37.84%)
:arrow_down:

cmd/install.go
66.66% <0.00%> (-7.53%)
:arrow_down:

cmd/run.go
0.00% <0.00%> (-62.78%)
:arrow_down:

cmd/status.go
12.50% <0.00%> (-68.46%)
:arrow_down:

cmd/uninstall.go
36.20% <0.00%> (-43.80%)
:arrow_down:

cmd/update.go
38.18% <0.00%> (-24.51%)
:arrow_down:

main.go
100.00% <ø> (ø)

pkg/repository/clone_mirror.go
0.00% <0.00%> (ø)

pkg/repository/crypto/keys.go
0.00% <0.00%> (ø)

pkg/repository/file_source.go
0.00% <0.00%> (-47.83%)
:arrow_down:

... and 63 more

Continue to review full report at Codecov.

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


Error of the plugin

Update this plugin this is best and it give internal server error update it !!
Fast everyone is waiting

Please give more infomation like plugin version, console log or crashdumps.

I am sending you some pictures see this and I got internal server error
On Fri, 6 Aug, 2021, 4:44 pm NgLam is SIMP, @.***>
wrote:

Closed #15 https://github.com/NgLamVN/InvCraft/issues/15.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/NgLamVN/InvCraft/issues/15#event-5122339861, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AUKVRLRQFTCZ7LLW5G7QGE3T3O7XZANCNFSM5BVRX6UQ
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&utm_campaign=notification-email
.


How to write export_options in gym command, instead of Gymfile

New Issue Checklist

[x] Updated fastlane to the latest version
[x] I read the Contribution Guidelines
[x] I read docs.fastlane.tools
[x] I searched for existing GitHub issues

Issue Description
How can I write below export_options in gym command, instead of Gymfile.
export_options: {
    method: options[:export_method],
    iCloudContainerEnvironment: "Production",
    teamID: "Apple Team ID Here",
    provisioningProfiles: { "com.example.bundleid": "Provisioning Profile Name" }
}

I want export_options to be included into following gym command:
fastlane gym --scheme <SchemeName> <export_options>
I am having similar issue to this, and trying this solution.

I ended up with using ExportOptions.plist file already added, and then referenced in following command.
fastlane gym --scheme "<Scheme Name>" --export_options "/<Path-To-File>/ExportOptions.plist" --verbose
Here is how my ExportOptions.plist looks like,
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>method</key>
	<string>app-store</string>
	<key>provisioningProfiles</key>
	<dict>
		<key><Bundle ID></key>
		<string>match AppStore <Bundle ID></string>
	</dict>
	<key>signingCertificate</key>
	<string>iPhone Distribution</string>
	<key>signingStyle</key>
	<string>manual</string>
	<key>stripSwiftSymbols</key>
	<true/>
	<key>teamID</key>
	<string><Team-ID></string>
	<key>uploadBitcode</key>
	<true/>
	<key>uploadSymbols</key>
	<true/>
</dict>
</plist>


Unsupported shading type: 4

Here's the PDF:
CSS3_awesomeness.pdf
Generated from this HTML using PDFCreator on Win7x64 (GhostScript):
example.html

The current code is not or no longer rendering that file.

Hm, that means many issues related to shading patterns might be regressions... We are tracking this in the other issues.


On Windows, netbird-ui.exe should only run one application instance

Describe the problem
On Windows, netbird-ui.exe should only run one application instance.
To Reproduce
Steps to reproduce the behavior:

Execute netbird-ui.exe.
Execute netbird-ui.exe again.
Notice that two Netbird icons appear in the Windows systray.

Expected behavior
It should only show a single icon in the Windows systray.
Screenshots

You ran the regular upgrade with the installer?

@mlsmaycon, I've used netbird_installer_0.23.0_windows_amd64.exe /S (you can see the full script that installs it at https://github.com/rgl/my-windows-ansible-playbooks/blob/main/roles/netbird/files/install-netbird.ps1).

I ran into this issue as well on windows 10. After adding in some debug logging when it got to process.Signal(syscall.Signal(0)) it output signal: not supported by windows.
Looking at this post https://stackoverflow.com/questions/15204162/check-if-a-process-exists-in-go-way I was able to make the process not start multiple instances on windows by modifying checkPIDFile to the following.  There are likely better methods of doing this, but it is outside of my skill-set to properly implement.
I also tested on ubuntu 20.04 by backgrounding the process and attempting to start it several times, which resulted in it correctly not starting another instance of the executable instead returning the error from the section where syscall is executed.
This might be one way to go about it minimal change, just going to leave this here as food for thought.
// checkPIDFile exists and return error, or write new.
func checkPIDFile() error {
	pidFile := path.Join(os.TempDir(), "wiretrustee-ui.pid")
	if piddata, err := os.ReadFile(pidFile); err == nil {
		if pid, err := strconv.Atoi(string(piddata)); err == nil {
			if process, err := os.FindProcess(pid); err == nil {
				if runtime.GOOS == "windows" {
					return fmt.Errorf("process already exists: %d", pid)
				} else if err := process.Signal(syscall.Signal(0)); err == nil {
					return fmt.Errorf("process already exists: %d", pid)
				}
			}
		}
	}

	return os.WriteFile(pidFile, []byte(fmt.Sprintf("%d", os.Getpid())), 0o664) //nolint:gosec
}


Handle missing resource script

Handle missing Pods-RubyMotion-frameworks.sh file

Fix for #150.  Would be nice to get this merged @amirrajan @AaronLasseigne


Free memory when using chunk in queries

Unsetting the variable frees the memory through the loop. Really useful for large datasets.
I've run the following code as a test for the issue (PHP 5.6).
User::truncate();

foreach (range(1, 100000) as $i) {
    User::create([
        'email'    => uniqid(),
        'name'     => 'foo',
        'password' => 'foo',
    ]);
}

User::chunk(5000, function ($user) {

    echo round(memory_get_peak_usage() / 1024 / 1024) . "\n";

});

Peak without commit: 39
Peak with commit: 29
If I'm right I think there could be more candidates to optimize. Maybe it's just a micro-optimization as this memory is just wasted during a small period of time in the loop.
Thanks.

As the variable is reassigned, wouldn't just letting the GC do its job achieve better execution time?

As far as I understand there is a moment in the life of the function where two instances of the collection $results exists, after the first loop is ending and the next one starts, and subsequents, before the reassignment.
You can try the example or any other with the same structure, with big collections / variables which would make difference appear clearly.
I've found this as an example http://blog.preinheimer.com/index.php?/archives/354-Memory-usage-in-PHP.html

Yes I noted that too, just before $results is reassigned, both result sets are reachable so the peak size is doubled. I guess this does make a difference in some situations, including yours, so the code change seems to be justified.
Thanks for the article link, I got inspired by the sentence "This isn’t critical, except when it is."

I'd add a note about why this is justified. In other situations it could be a micro optimization, but in these case this function is clearly expected to manage big memory... because that's the reason why someone would use "chunk"s ;)


Other Pose/ Skeletons

Hi
Is there any possibilities to use ohter Poses/Skelton methods like either OSX https://osx-ubody.github.io/ or https://github.com/wholebody3d/wholebody3d
UBody Dataset
UBody is a large-scale Upper-Body dataset with the following annotations:
2D whole-body keypoints

Sure，I think this is good idea to explore !

@mayuelala
Thats great, is there any planned schedule to add them?
Thanks
Best regards


add description to studies

required by https://github.com/orgs/cph-cachet/projects/4/views/1?pane=issue&itemId=85190652&issue=cph-cachet|carp-portal|22

A Study already has a description - see https://github.com/cph-cachet/carp.core-kotlin/blob/develop/carp.studies.core/src/commonMain/kotlin/dk/cachet/carp/studies/domain/Study.kt
So - this is not needed.


[5] Refactor your micro service to use Flask-RESTX

As a software engineer
I need to refactor my micro services to use Flask-RESTX
So that I can provide Swagger documentation with very little effort
Details and Assumption

following the file layout outlined in lab-flask-restplus-swagger.
Add the prefix /api to your REST API so that the swagger docs will work on the root URL
Make sure that all HTTP errors return json error messages and not html (note: You will actually be able to delete most of the error_handlers.py file because Flask-RESTX will handle most of these errors for you)
Run your test cases and make sure that your Flask-RESTX implementation still works like the original.

Acceptance Criteria
Given Flask-RESTX with Swagger annotations
When I test the same test cases
The tests should still run and work as expected

Hey team! Please add your planning poker estimate with Zenhub @nicksome168 @yjhsieh2022 @even1111112 @un-poco @PepperandSummer


Restrict network

Right now everything is open.  We might want to be more selective about open ports.

Given that https://github.com/cloud-partners/oci-couchbase/issues/7 is an issue, it probably makes sense to close everything but the web GUI and Sync Gateway ports until there's a resolution.


link_to_add_association not working.

hi there, i have used concoon before successfully, and i have copied the code from my working example for rendering the partial for the first set of nested attributes, and the link is only adding on a # without displaying the partial, whereas on my working example, the url does not change to localhost:3000/key/new# and it does render the partial.
any ideas?
<%= simple_form_for(@etios_key, :html => {:class => 'form-horizontal' }) do |f| %>
  <%= f.error_notification %>

    <%= f.input :oid %>
    <%= f.input :name %>
    <%= f.input :short_name %>
    <%= f.input :app_name %>
    <%= f.input :org_url %>
    <%= f.input :nav_color %>
    <%= f.input :facebook_id %>

Dashboard Actions

    <%= f.simple_fields_for :dashboard_actions do |action| %>

            <%= render 'dashboard_action_fields', :f => action %>

    <% end %>
    <%= link_to_add_association 'Add Action', f, :dashboard_actions %>

    <%= f.button :submit %>

<% end %>

In Rails 4.2.0 I wasn't able to display the add button I needed to add a build in the association. Check this link: http://stackoverflow.com/questions/26346850/cant-get-cocoon-to-work-on-ruby-on-rails-4.
Hope it help anyone else.


Option for GitHub spice in GFM mode

Does not affect default behavior, but does allow users to disable GitHub spice if needed using the modeConfig parameter.
By GitHub spice, I mean:

User/Project@SHA
User@SHA
SHA
User/Project#Num
User#Num
#Num

Thanks. Merged as 658ef7809e3 and slightly changed in ece5c232a43


feat: rework NVM access, support incremental NVM modification over serial

This PR reworks the NVM modification capabilities, which currently require the full round trip:

NVM backup
Convert to JSON representation
Modify JSON
Convert to binary
NVM restore

The changes here allow incrementally modifying the NVM by reading/writing/deleting individual "properties", either from a file, or directly via serial.
As a bonus, it adds a new nvm property to the Controller class, which gives applications access to this functionality.
Enables: https://github.com/zwave-js/node-zwave-js/issues/7096

@zwave-js-bot automerge


Multiple component in one column

I have a requirement to add a text box and a button in the same column. Onclick of the button need to execute a method.
I have used 'render' property of 'fields'
render: function (row) { return row.status.toLowerCase() === AppConstant.LEAVE_APPROVED ? '<div class="col-xs-8">       <input type="text" class="form-control" placeholder="Remarks(Optional)">     </div><button type="button" class="btn btn-danger" (click)="this.cancelLeave(row)">Cancel</button>' : ''; },
But the above code is not resolving the (click) event.
I have tried with 'columnComponent' also. But in this case I am blocked with the issue #133
@hjalmers , need your help to resolve this.

@hjalmers , sorry to bother you. Could you please help me to achieve this requirement.

The render function is meant for presentation only so it won't bind input fields or any other events like click etc. Custom component is the solution in this case together with a service for handling the communication with the parent component (the table itself).


Half Health Bar and Quarter Health Bar - Both custom modifiers need a rework?

Only thing to do is to remove that congratulations phrase at the end of the 25% modifier.

Only thing to do is to remove that congratulations phrase at the end of the 25% modifier.


Iobroker don’t start with Redis

When I add the Redis environment variable, iobroker does not start anymore. Without Redis it works.
vi docker-compose.yml
version: '2'

services:
  iobroker:
    restart: always
    image: buanet/iobroker:latest
    container_name: iobroker
    hostname: iobroker
    environment:
      IOB_OBJECTSDB_HOST: redis
      IOB_OBJECTSDB_PORT: 6379
      IOB_OBJECTSDB_TYPE: "redis"
      IOB_STATESDB_HOST: redis
      IOB_STATESDB_PORT: 6379
      IOB_STATESDB_TYPE: "redis"
    networks:
      - iobroker-network
    ports:
      - "8081:8081"
      - "1883:1883"
    volumes:
      - ./iobroker/data:/opt/iobroker
    depends_on:
      - "redis"

  redis:
    restart: always
    image: redis:latest
    environment:
      - ALLOW_EMPTY_PASSWORD=yes
    hostname: redis
    container_name: redis
    networks:
      - iobroker-network

networks:
  iobroker-network:
    driver: bridge

docker container logs -f iobroker

------------------------------------------------------------
---------------     2020-09-28 15:56:52      ---------------
------------------------------------------------------------

------------------------------------------------------------
-----       Welcome to your ioBroker-container!        -----
-----          Startupscript is now running.           -----
-----                Please be patient!                -----
------------------------------------------------------------

------------------------------------------------------------
-----              Debugging information               -----
-----                                                  -----
-----                      System                      -----
-----               arch:      aarch64                 -----
-----                                                  -----
-----                     Versions                     -----
-----               image:     v5.0.0                  -----
-----               node:      v12.18.4                -----
-----               npm:       6.14.6                  -----
-----                                                  -----
-----                       ENV                        -----
-----               IOB_OBJECTSDB_HOST: redis                   -----
-----               IOB_OBJECTSDB_PORT: 6379                    -----
-----               IOB_OBJECTSDB_TYPE: redis                   -----
-----               SETGID:    1000                    -----
-----               SETUID:    1000                    -----
-----               IOB_STATESDB_HOST: redis                   -----
-----               IOB_STATESDB_PORT: 6379                    -----
-----               IOB_STATESDB_TYPE: redis                   -----
------------------------------------------------------------

------------------------------------------------------------
-----         Step 1 of 5: Preparing container         -----
------------------------------------------------------------

Nothing to do here.

------------------------------------------------------------
-----   Step 2 of 5: Detecting ioBroker installation   -----
------------------------------------------------------------

There is no data detected in /opt/iobroker. Restoring initial ioBroker installation...
Done.

------------------------------------------------------------
-----   Step 3 of 5: Checking ioBroker installation    -----
------------------------------------------------------------

(Re)Setting folder permissions (This might take a while! Please be patient!)...
Done.

Fixing "sudo-bug" by replacing sudo in iobroker with gosu...
Done.

Looks like this is a new and empty installation of ioBroker.
Hostname needs to be updated to  iobroker...
The host for instance "system.adapter.admin.0" was changed from "b12eb7896b5c" to "iobroker".
The host for instance "system.adapter.discovery.0" was changed from "b12eb7896b5c" to "iobroker".
The host for instance "system.adapter.info.0" was changed from "b12eb7896b5c" to "iobroker".
Done.

------------------------------------------------------------
-----      Step 4 of 5: Applying special settings      -----
------------------------------------------------------------

Some adapters have special requirements/ settings which can be activated by the use of environment variables.
For more information take a look at readme.md on Github!

ENV IOB_OBJECTSDB_TYPE is set and value is different from detected ioBroker installation.
Setting type of objects db to "redis"...
Done.
ENV IOB_OBJECTSDB_HOST is set and value is different from detected ioBroker installation.
Setting host of objects db to "redis"...
Done.
ENV IOB_OBJECTSDB_PORT is set and value is different from detected ioBroker installation.
Setting port of objects db to "6379"...
Done.

ENV IOB_STATESDB_TYPE is set and value is different from detected ioBroker installation.
Setting type of states db to "redis"...
Done.
ENV IOB_STATESDB_HOST is set and value is different from detected ioBroker installation.
Setting host of states db to "redis"...
Done.
ENV IOB_STATESDB_PORT is set and value is different from detected ioBroker installation.
Setting port of states db to "6379"...
Done.

------------------------------------------------------------
-----          Step 5 of 5: ioBroker startup           -----
------------------------------------------------------------

Starting ioBroker...

object system.meta.uuid created: 24a07e47-2dc5-13bc-8c56-8d1cd10de1c4
object system.user.admin created

redis-cli -h <IP_ADDRESS> --scan --pattern '*'
cfg.o.system.host.iobroker.compactModeEnabled
io.system.host.iobroker.logLevel
cfg.o.system.host.iobroker.eventLoopLag
cfg.o.system.host.iobroker.uptime
io.system.host.iobroker.compactModeEnabled
cfg.o.system.host.iobroker.instancesAsProcess
io.system.host.iobroker.uptime
cfg.o.system.host.iobroker.instancesAsCompact
io.system.host.iobroker.alive
cfg.o.system.host.iobroker.cputime
io.system.host.iobroker.freemem
io.system.host.iobroker.compactgroupProcesses
cfg.o.system.host.iobroker
cfg.o.system.user.admin
io.system.host.iobroker.outputCount
cfg.o.system.host.iobroker.memHeapTotal
cfg.o.system.host.iobroker.diskFree
cfg.o.system.meta.uuid
cfg.o.system.host.iobroker.freemem
io.system.host.iobroker.diskFree
io.system.host.iobroker.plugins.sentry.enabled
cfg.o.system.host.iobroker.cpu
cfg.o.system.host.iobroker.compactgroupProcesses
io.system.host.iobroker.cpu
io.system.host.iobroker.memRss
io.system.host.iobroker.cputime
io.system.host.iobroker.inputCount
cfg.o.system.host.iobroker.zip
io.system.host.iobroker.load
cfg.o.system.host.iobroker.plugins.sentry.enabled
cfg.o.system.host.iobroker.memHeapUsed
cfg.o.system.host.iobroker.outputCount
io.system.host.iobroker.instancesAsProcess
cfg.o.system.host.iobroker.diskWarning
cfg.o.system.host.iobroker.diskSize
io.system.host.iobroker.diskSize
io.system.host.iobroker.eventLoopLag
cfg.o.system.host.iobroker.logLevel
cfg.o.system.host.iobroker.memAvailable
io.system.host.iobroker.memAvailable
cfg.o.system.host.iobroker.mem
cfg.o.system.host.iobroker.plugins.sentry
io.system.host.iobroker.memHeapTotal
cfg.o.system.host.iobroker.alive
cfg.o.system.host.iobroker.load
io.system.host.iobroker.mem
cfg.o.system.host.iobroker.memRss
cfg.o.system.host.iobroker.inputCount
io.system.host.iobroker.instancesAsCompact
io.system.host.iobroker.memHeapUsed

docker exec -it iobroker bash'
root@iobroker:/opt/iobroker# iobroker status
 Cannot read system.config: null (OK when migrating or restoring)
 Cannot find view "system" for search "host" : null
iobroker is running on this host.

No iobroker host is running.

Objects type: redis
States  type: redis

Sorry, not sure whats wrong there.
But: Have not yet tested redis as objects db.
And
"iobroker status" is not working. Take a look at the processes running for checking iobroker to run.
Did u get it running? If not i can test your config in my testing environment.
Regards,
André

Hello André
I tried again today with the latest version, unfortunately without success.
I have add "iobroker status" as debug information to show that it accepts redis.
It seems to hang itself at "object system.user.admin created".
Regards,
Nitan

Hi, I checked it. Please read here: https://github.com/ioBroker/ioBroker#databases
At the moment storing Objects in redis is still not supported. I think I have to add a hint in readme.md...
Remove this lines from compose file and ioBroker will start successfully:
      IOB_OBJECTSDB_HOST: redis
      IOB_OBJECTSDB_PORT: 6379
      IOB_OBJECTSDB_TYPE: "redis"

If you agree, please close this issue. Otherwise, let me know what you think. :)
Regards,
André

Thanks Andrew,
With the configuration change it works.
The problem is Iobroker, because there is a configuration option that does not work.
An addition in the readme file would help.
Best regards,
Nitan


I'm very interested in your topic, but I haven't solved some problems. I write articles in Chinese, but when I use search, the search results are not as expected

I'm very interested in your topic, but I haven't solved some problems. I write articles in Chinese, but when I use search, the search results are not as expected
But when I switch between other topics, search works
Do you need to pay attention to the application of Chinese search?
Please help me.

I don't quite understand, what results are you expecting? Can you give an example?

This is the title of my article

But searching for the text in the title of the article does not exist

I don't quite understand, what results are you expecting? Can you give an example?

1

Hi!
I tested the current version of search, and now the situation is like this:
I have a post titled "锤子科技之前的罗永浩".

If I search for “锤子” or “锤子科技”, I can find this post.

If I search for “罗永浩” or “科技”, I cannot find this post.


Infinite loops should not crash pastebin

In browsers, all of the UI runs in a single thread (HTML5 webworkers support multiple threads, but only for threads that do not access the DOM). Writing JS code with an infinite loop will cause the browser window to crash.
To prevent this, one common approach is to rewrite Javascript to automatically insert timeouts. For example, this library will rewrite loops to check how long they have been executing and stop execution if a timeout has been exceeded: https://github.com/jsbin/loop-protect .

Status Update - Checklist

[x] Detect potential infinite loops
[x] Warn user about the potential infinite loop
[x] Point the line where the loop is present
[ ] Prevent browser from freezing due such loops

Venkat, we use an AST anyways. I suggest instrumenting via Esprima AST and get the instrumented code with Escodegen. We are doing already doing it for other issues in execution trace.

Yes David, having tried to inject the timeout code to break the execution of loop, maybe its better we work together on this to simultaneously detect/prevent while tracing through AST.

#39 provides features for solving this. Insert timeout-call statement in loop blocks. Read executiontrace.js. more info in our team slack channel.

The updated code on my branch now detects and prevents code with infinite loops from running. Thus the browser isn't crashing. I had to add a run button which when pressed runs the code. The button gets disabled and the user gets a warning if there is any infinite loop.
Closing the issue till a better solution for this issue is found.


Create LCARS CSS from Star Trek Nemesis [In progress] [Replica]

Some screens were clearly shown in Nemesis. I'm working on creating them, although my CSS might need supervision :)

I've already linked preliminary HTML/CSS in issue #18, but here is a screenshot of progress. Any help appreciated.

Note: As much as possible, the appearance should be identical to the original and not just a tribute which is 'similar' (but please ignore inconsistencies for now, it's experimental). Animations may be implemented once the layout is exact. I have a smaller screen myself (1600x) which makes this a little challenging.

Really like the spectrum at the top left!