Follows + preferences can copy over on Firefox on sign up of a new account

Bug
Follows + preferences copy over to new account on Firefox on sign up.
Doesn't seem to happen on brave.
If logging in, the wrong follows may flash on screen but don't get permanently copied over.
To Reproduce
(Easier to  repro if first account uses ~dark~ light theme.)
On Firefox:

Log in to some account which has follows
Reload page
Log out
(Non-logged in page should still show dark theme. This didn't happen on brave)
Create a new account
Follows + preferences copy over to the new account.(Wallet accounts don't merge)

Sounds like FF is not clearing all  the local state. Thanks for digging into this and reproducing.

Fixed on Odysee now, and probably not desktop app thing anyway


Fix compile error on s390x in shims/lock.h

s390x has a strong memory model and does not require membarrier.
This is the same as https://github.com/apple/swift-corelibs-libdispatch/pull/234 but for the 3.1 branch

Yes it's comparable to Intel (see Table 5 in http://www.rdrop.com/~paulmck/scalability/paper/whymb.2009.04.05a.pdf).


redmine: add selectable plugin support at the cost of reproducibility. (FYI only, NOT for merging)

Motivation for this change
Installing Redmine with plugins. However I don't think it's reasonably doable to let the users select the wanted plugins and still ensuring reproducibility by fixing a gemset.nix, that would amount to roughly 2^|plugins| gemset.nix files.
I'm just sharing this attempt as an experiment that should not be merged, but might inspire others who know Nix better than I do. In the end, I myself am not sure to need Redmine, and the configuration of the main plugin I wanted is too difficult: I was unable to understand why redmine_git_hosting was sometimes issuing a working SSH connection to the gitolite user, and sometimes not (acting like there were a need to accept the server's key by having its connection postponed by sshd). So I'll stick to simple Gitolite and maybe Discourse. Anyway, hope this helps.
Things done

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

[ ] NixOS
[ ] macOS
[ ] other Linux distributions

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

Thanks :) I'll close this though, no need to keep open a PR that isn't intended to be merged

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/packaging-a-redmine-plugin/15061/2


Include License section for README

Note: This and #38 together would be great!

There is a license file in a prominent place in the repository, why duplicate this information?

What's notable is that I do not see see any place where the boilerplate notice is actually attached and 'applied' (hence I included it in the README). Including that notice in the LICENSE would certainly help!

This is technically incorrect, since we are based on the Apache 2 license, yet have eliminated the binary distribution clause from it.  It's best to leave it out of the readme.


Building a HB template with $CLASS$ text fails

moved from https://github.com/assemble/assemble/issues/580#issuecomment-101763972

https://github.com/assemble/grunt-assemble/blob/master/tasks/assemble.js#L700
1 line change
change layout.replace(assemble.engine.bodyRegex, body); to layout.replace(assemble.engine.bodyRegex, body.replace("$", "$$$$"));

@jonschlinkert's solution with .split().join() is probably a better way to go. The other way is to use function () { return body; } instead of body, but I think Jon's benchmarked the split/join and it's usually faster, right?
@knight-dj-et if you'd like to do a PR, that'd be awesome!

I think Jon's benchmarked the split/join and it's usually faster, right?

well, it's not about faster here. it's only useful if we want to replace multiple occurrences of body, which I 'm almost positive we were doing - at least at one point. I remember the pr that added that. If not, then we can't do split.

but yes, it's also considerably faster

wait, why would we do layout.replace(assemble.engine.bodyRegex, body.replace("$", "$$$$"));. that will arbitrarily replace the first $ character anywhere in the body string with $$$$.

Oh. I suppose I did it too broadly.  It should replace any $ followed by a $, ', `, & or number with "$$" (which has to be passed as "$$$$" since this is using replace which will still treat the $ as special characters)

we would need to do something like this:
var injectBody = function(layout, body) {
  body = body.split('$').join('\\$');
  var res = layout.replace(assemble.engine.bodyRegex, body);
  return res.split('\\$').join('$');
};

the other alternative is to just do split/join on the actual body tag. IMO that's a better way to go. since : 1) a user would expect any tag to yield the same result if it was used more than once in a string, 2) it would only do the split/join operation once, whereas the escaping approach ends up doing it three times (including .replace())

All we need to do is layout.replace(assemble.engine.bodyRegex, function () { return body; });

^

@doowb you said that earlier and I missed the function part of the replacement...

fixed in<EMAIL_ADDRESS>


Configure Devise mailer to send password recovery emails

What
This PR addresses this issue https://github.com/eduqg/LifeToRemind/issues/5. Configuring Action Mailer options and setting up the UI so that users who want to reset their password have a way to do so.
Why
We need to be able to send password reset instructions to users when they forget their passwords.
Testing

[ ] Install the mailcatcher gem with the command gem install mailcatcher before executing the next steps (This PR also sets up the app so that emails sent in dev environment go to mailcatcher)
[ ] Start up mailcatcher by running mailcatcher command in your terminal
[ ] Open the mailcatcher UI in another browser tab by visiting 'http://<IP_ADDRESS>:1080/'
[ ] Go back to the app and Sign up with an email and a password and then sign out
[ ] Visit the Sign in page
[ ] Click on the "Forgot your password" link
[ ] Assert that the link takes you to a page where you are required to provide your email
[ ] Fill in your email details and submit the form
[ ] Go to the mailcatcher tab and assert that a new Password Reset email was sent
[ ] Click on the link in the email and assert that you are taken to the password reset page in the app
[ ] Set up a new password and submit the form
[ ] Assert that you are redirected to the home page of the app
[ ] Sign out and sign in again with the new password to verify that the new password has taken effect

Additional Information

The PR configures the smtp server to be gmail
For this feature to work in production we will need to create environment variable with gmail credentials, namely: GMAIL_DOMAIN, GMAIL_USERNAME, GMAIL_PASSWORD and HOST where host is the base url of the app.

Good work :party:


Sethli/overhaul getting started docs

Add AzureAD auth troubleshooting documentation and documentation on gathering various types of logs that can be useful in troubleshooting Skype Web SDK issues.

@sivijaya did a technical review of the Azure AD troubleshooting documentation.

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


Enable pre-commit checks by prow

SSIA

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To complete the pull request process, please ask for approval from codificat after the PR has been reviewed.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

/approve

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: codificat
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [codificat]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


update timeline graphic

As provided by @hhaddouch

OK.
When using this new picture, include the reference to Congress (?) decision where the end is now 2033 and not 2030.

@golfvert yes, the image is below the relevant text:
https://github.com/wmo-im/wis2-transition-guide/blob/timeline-image/transition-guide/sections/wis2_implementation_plan.adoc


Aer needs its own documentation page

With the removal of Aer from the metapackage, a documentation page for its own is needed.
Once Aer is removed from the metapackage, the module will be at the same level of other application modules and it will require its own https://qiskit.org/documentation/aer/ in the same way that https://qiskit.org/documentation/nature/ exists, for example.
I suggest creating https://qiskit.org/documentation/aer/ silently with no change in the metapackage documentation first.

Just for clarification that aer pr does not remove aer from the metapackage. It is creating a new python namespace. The term package there is in the strict python terminology which is confuse for most people: https://docs.python.org/3/glossary.html#term-package
As for the issue this is kinda premature. Aer is still part of the metapackage for now. This issue is also primarily not something we fix in the metapackage repository as publishing self contained docs is done in the aer repository.

I've pushed up https://github.com/Qiskit/qiskit-aer/pull/1589, https://github.com/Qiskit/qiskit/pull/1595, and https://github.com/Qiskit/qiskit/pull/1596 which should address this. Aer will move to a standalone docs build and the main qiskit docs will have redirects from the old aer pages to the new build

closed by https://github.com/Qiskit/qiskit-aer/pull/1589


Provide a Helm chart for standalone and RAC Oracle deployments on Kubernetes

Please provide a simple way to deploy Oracle databases on Kubernetes

Helm charts are on the roadmap, but there is no ETA for this yet.

Thanks for the answer, maybe you could keep the ticket open to track the request and see if someone out there is interested in working on it. I might if I get some free time to do it.

Any update on this issue? I am also currently looking for helm chart to deploy Oracle database.

Hi any update on this topic? Is there any Helm Chart to deploy Oracle Database standalone or RAC on Kubernetes? By advance thanks

Hi, Is there any update on this. Ideally we would like to pass ASM LUNS to it as well.

Reopened and assigned to @gvenzl (for standalone) and @psaini79 (for RAC).

Enabling some form of HA here (even Active/Passive with RAC-One-Node) would open a number of Test/Dev use-cases on Kubernetes. Most Kubernetes platforms are in a constant state of flux, whether it be Draining due to platform maintenance; or nodes coming through Cluster Autoscaling. The availability of a Standalone Oracle DB deployment in the above scenarios is likely too poor for application develop teams.
Is it worth starting a document to discuss approaches for moving an HA solution forward? Could start with some suggestions for simplifying this. For example:

Develop raw yaml before templating into Helm
Separate the manifests for Standalone, RAC One Node and RAC deployments
Descope ASM and start with NFS
Develop for a static number of instances (e.g. 3) and descope lifecycle changes such as joining or removing instances

Discuss possible approaches for Kubernetes challenges, for example:

Clusterware requirement: Public & Private interfaces within a Pod (possibly use Multus CNI)
Clusterware requirement: Private interface multicast/broadcast capability (again possibly use Multus CNI)
Which Kubernetes pattern and why: StatefulSet vs Deployment
...

Helm charts for standalone Database are here: https://github.com/oracle/docker-images/tree/master/OracleDatabase/SingleInstance/charts/oracle-db


Space - Antonia

React Tic Tac Toe
Congratulations!  Please reflect on the assignment with these questions.
Reflection

Prompt
Response

How are events / event handlers and useState connected?
Callback functions connect event handlers and useState.

What are two ways to do "dynamic styling" with React? When should they be used?
Using CSS, through style sheets or inline styling.

Much like Rails works with the HTTP request->response cycle, React works with the browser's input->output cycle. Describe React's cycle from receiving user input to outputting different page content.
User input triggers the onClickCallback method, the state will change, components update and will be re-rendered.

CS Fundamentals Questions

Question
Answer

What do you think is the BigO complexity of the method you use to compute a winner?
-

Consider what happens when React processes a state change from setState -- it must re-render all of the components that now have different content because of that change.What kind of data structure are the components in, and what sort of algorithms would be appropriate for React's code to "traverse" those components?Speculate wildly about what the Big-O time complexity of that code might be.
Maybe a hash table so items can be looked up by a key. Time complexity would be O(1) in the average case, O(n) worst.

React Tic Tac Toe

Major Learning Goals/Code Review

Criteria
yes/no, and optionally any details/lines of code to reference

Demonstrates proper JavaScript coding style.
✔

Correctly passes props to child components.
✔

Correctly passes callback functions to child components and calls them to respond to user events.)
✔

Maintains the status of the game in state.
✔

Practices git with at least 6 small commits and meaningful commit messages
I would recommend committing more often than you did so that you can track your work in smaller increments. This will feel even more important when we start doing pair projects in which you and your partner work on different things at the same time.

Uses existing stylesheets to render components
✔

Functional Requirements

Functional Requirement
yes/no

The Square component renders properly and executes the callback on a click event.
✔

The Board component renders a collection of squares
✔

The App component renders a board and uses state to maintain the status of the game.
✔

Utilizes callbacks to UI events to update state
✔

Overall Feedback

Overall Feedback
Criteria
yes/no

Green (Meets/Exceeds Standards)
5+ in Code Review && 3+ in Functional Requirements
✔

Yellow (Approaches Standards)
4+ in Code Review && 2+ in Functional Requirements, or the instructor judges that this project needs special attention

Red (Not at Standard)
0-3 in Code Review or 0,1 in Functional Reqs, or assignment is breaking/doesn’t run with less than 5 minutes of debugging, or the instructor judges that this project needs special attention

Additional Feedback
Great work! All the code here makes it clear that you learned how to code a full React program with several nested components!
One note: Your program doesn't run as the code is written. The last commit you made with the comments seems to have commented out something it shouldn't have. Luckily I just went backward one commit and it worked fine :) It's a good idea to test out your program one last time before submitting an assignment. Thorough testing helps with this too but we unfortunately didn't do testing for this assignment.

Code Style Bonus Awards

Was the code particularly impressive in code style for any of these reasons (or more...?)

Quality
Yes?

Perfect Indentation

Elegant/Clever

Descriptive/Readable

Concise

Logical/Organized


differences between mvn clean install and mvnd clean install

I used  mvnd clean install -DskipTests -DskipITs -Dquarkus.build.skip -DskipDocs -Denforcer.skip twice in quarkus root now and both times I don't seem to end up with jars/classes in the ~/.m2 repo that corresponds to what mvn clean install brings.
The way I realize there is an issue is that breakpoints were not being hit and main diff was that newly updated code from a pull request did not seem to be included in the build.
My best guess is that mvnd might do some time comparison and the PR's files are from before last build  thus they  are not included in the build or something similar ?
I wish I could be more precise :)

I have found another issue when trying to dig into this one: https://github.com/gnodet/mvnd/issues/25

In case this is really caused by malfunctioning classloader cache, as suggested by @gnodet in #26 then the issue can be workarounded by killing the daemon mvnd --stop each time you change code loaded by some of the quarkus plugins.

It seems like mvnd is not picking the changes in camel-quarkus-bom. Let me properly record the steps to reproduce next time I see it.

mvnd is indeed malfunctioning when there is a Mojo in the source tree and it is used in another module. https://github.com/mvndaemon/mvnd/issues/33  links a reproducer. We have such a situation in Quarkus, so this may well be a root cause of what @maxandersen sees.
I still have to check if changes in BOM are picked.

Closing as the plugin classloader cache invalidation issue should be solved as of mvnd 0.0.1 (see https://github.com/mvndaemon/mvnd/releases/tag/0.0.1 ) and I have not seen any issue related to changes in BOM for some time now.
@maxandersen thanks for the report and looking forward for new reports if you give mvnd the second chance!


migrate to TypeScript

As a developer
I can use Typescript
So that I am more confident with my code

[ ] use gatsby recipes to migrate
https://davidl.fr/blog/migrate-gatsby-to-typescript

[ ] or you can check this PR https://github.com/flexbox/artaufeminin/pull/14/files

Adding typescript

[x] Migrate *.js files to *.tsx
[x] remove "prop-types": "^15.6.2", from package.json
[x] add interface when necessary (you can have a look at the typescript cheatsheet)

more reading on the documentation
and feel free to create a new gatsby project with typescript to have a look

has been Migrated to typescript


(1) Allows negative Rp/Rs for shallow transits, (2) nansums in optspec extraction to address masking issues, (3) allows for skipping/fitting only certain bins in S5, and (4) updates aperture to be centered properly

Lots of tiny changes that I'm finally looking to merge into the main branch.
1. Allows negative Rp/Rs for shallow transits
For shallow transits, we shouldn't reject steps that try negative Rp/Rs. This results in chopped-off posteriors. I simply removed that condition from the "physicality" check.
2. nansums in optspec extraction to address masking issues
In the spectral extraction, the masking is setting masked values to nan. Optspec.py uses regular sums, so you end up with fully rejected columns if there was a single bad pixel/outlier, which can get out of hand if you have may bad/trimmed pixels. Switching to nansum fixes this.
3. allows for skipping/fitting only certain bins in S5
Simple change to allow input in S5 that lets you only fit certain bins, or skip certain bins. Also wraps the fitting in a try/except statement so a failed fit doesn't crash the full run.
4.  updates aperture to be centered properly
Based on discussions with Kevin, aperture extraction was from [pos-aperture: pos+aperture], which means you get one fewer pixel above the center than below. Updated to be centered, results in an odd number of pixels within the aperture centered at the center of the trace. So the total number of pixels is the 2*ap_hw + 1 now. Similar update for the background region. This also addresses a half pixel offset that is used for computing the center of mass for computing how to roll columns when straightening the trace which isn't removed prior to calculating the number of pixels to roll by.

Another thing to consider is what impact all of this will have on the Stage 6 code - my guess is that many of the changes in this PR are likely to break much of the Stage 6 functionality.

Yeah, sorry about the delay! I think the easiest/quickest thing will be to pull out the stage 5 changes for now since that requires some extra work and is the least important of these changes. I think then it's just looking at negative transits in starry (which I've never used and would definitely appreciate you looking into if you have used it) and stripping back the nansums so your changes to the masking can be done instead. If that plan sounds good I can make this a priority.

Yeah, punting your point 3 to another PR to be able to quickly merge points 1 and 4 sounds like a good idea to me. That's not to say that point 3 isn't worth pursuing, it's just going to be a bit finicky to get coded just right.
I'll quickly test a negative radius in starry to see what happens. Even if starry doesn't allow it (which it may since I don't know if all that fancy math would break with a negative radius), we can likely still make it work by manually inverting the transit signal

Alright, so while starry doesn't technically crash with negative radii, it doesn't end up giving the expected behaviour. I suggest the following which should have fairly minimial impacts on speed (you're welcome to implement it, or I can too). I'll note that I haven't tested this fully implemented or anything, but I have tested it in a Jupyter notebook and think it should work.

In eureka.S5_lightcurve_fitting.differentiable_models.StarryModel.eval() in place of the current line which reads:
lcpiece = systems[chan].flux(time)

we need to instead put:
fstar, fp = systems[chan].flux(time, total=False)
if lessthan(planet.r, 0):
    fstar = 2-fstar
    fp *= -1
lcpiece = fstar+fp

where we'll need to define greater above in the if eval: section as:
        if eval:
            lib = np
            lessthan = np.less
            systems = self.fit.systems
        else:
            lib = tt
            lessthan = tt.lt
            systems = self.systems

And in eureka.S5_lightcurve_fitting.differentiable_models.StarryModel.setup() where we have:
r=temp.rp*temp.Rs

we instead need
r=tt.abs_(temp.rp)*temp.Rs

and in eureka.S5_lightcurve_fitting.differentiable_models.StarryModel.update() where we have:
r=temp.rp*temp.Rs

we instead need
r=np.abs(temp.rp)*temp.Rs

Finally, in eureka.S5_lightcurve_fitting.differentiable_models.PyMC3Models.CompositePyMC3Model.__init__(), where we currently have:
                                elif parname in ['rp', 'per', 'scatter_mult',
                                                 'scatter_ppm', 'c0', 'r1',
                                                 'r4', 'r7', 'r10']:

we'll need
                                elif parname in ['per', 'scatter_mult',
                                                 'scatter_ppm', 'c0', 'r1',
                                                 'r4', 'r7', 'r10']:

@taylorbell57 I think I've successfully removed the necessary commits. double checking things right now
I've also added a new commit that addresses a plotting issue where the y-axis wasn't correct in the residual background plot. The aperture markings on that make much more sense now.

ahh, I see it deleted s5_fit instead of ignoring the file... can you reject that change on your end or should I add it back in?

👍 wasn't sure if you could do it in the "resolve conflicts" stage. I'll get that file added back in.

I'll add the PyMC3 edits to this PR now if that's alright with you?

Yep, sounds good!

@erinmmay I don't think you've set it so that reviewers can make edits to your PR - I've made edits to PRs from forks before and can't seem to do so for yours, so my assumption is that you didn't check that box. Can you see if you're able to check it now (or confirm that it's already checked and I'm just missing something on my end)?

Aha, never mind - I am able to make commits. It's just been a long time since I did that and couldn't remember how

Alright, I think this PR looks ready to me - do you want to weigh in @kevin218, or should I approve it?

I can also confirm that all of the tests pass locally as well (GitHub automated testing is broken for all our PRs right now)


Bug Fixes

You had a double quote in one of the files and I was correcting your grammar and making the README better.

@superzackx?

I'm not working on this project anymore.
On Thu, 15 Sep 2022, 16:53 Nigamanth Srivatsan, @.***>
wrote:

@superzackx https://github.com/superzackx?
—
Reply to this email directly, view it on GitHub
https://github.com/superzackx/thankcodes/pull/1#issuecomment-1247968169,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AN3RGYTI6TYP43RUNI6EOLLV6MBMXANCNFSM6AAAAAAQLKYW7A
.
You are receiving this because you were mentioned.Message ID:
@.***>

You can still merge though.


Toolbar title is moving when swapping fragments

Hi!
I have one activity and two fragments. Each fragment has it's own Toolbar with different title. When I swap fragments (using transaction.replace) then the title is moving/jumping. In 2.1.0 it's a little better. Movement is a lot less visible but it's still there.
Here is a sample project that reproduces this issue: https://drive.google.com/open?id=0B4aF0Bxe-ecnRjBCaEdIMzMxYVU
It's not using any custom fonts, wrapping Context in attachBaseContext is enough to reproduce this issue.

Workaround for this would be to move the Toolbar to the Activity. When only text is changing on the already inflated Toolbar this bug is not present.

@mzgreen have you tried the latest support lib, (24.0.0) some users have reported the Jumping around has been fixed.

Yes, the sample code actually uses 24.0.0.

It worked for me: toolbar.setSubtitle(null);

@Nik27 where exactly did you put that?
@chrisjenx If setting subtitle to null really helps, do you have an idea why?

Setting null probably instantiates the subTitle TextView so it's laid out
correctly. I'll see if I can do something similar
On Thu, 14 Jul 2016 at 14:41 mzgreen<EMAIL_ADDRESS>wrote:

@Nik27 https://github.com/Nik27 where exactly did you put that?
@chrisjenx https://github.com/chrisjenx If setting subtitle to null
really helps, do you have an idea why?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/chrisjenx/Calligraphy/issues/304#issuecomment-232668407,
or mute the thread
https://github.com/notifications/unsubscribe/ABHRsYjw4WPQ0M54_LzKwHhE0LCAnJ4lks5qVjx4gaJpZM4JG067
.

@mzgreen
https://github.com/Nik27/CalligraphyToolbarBug

@chrisjenx
I think this is due to toolbar.setSubtitle(BLANK); in CalligraphyFactory.ToolbarLayoutListener

This seems to only periodically occur in my case. Maybe 80% of the time instead of a font change being applied to my Toolbar's title, it will layout an empty subtitle and make no changes to the title itself (aside from pushing it upwards to make room for the subtitle. Oddly, this doesn't occur with my other fragments, just the first one to be inflated on the first activity.
Frustratingly, I'm doing nothing with subtitles at all in my application.

Maybe I've narrowed it down. It seems when the first toolbar is being rendered, the bug occurs, but if the app is still in memory or I'm going to another fragment, the title rendering works. Closing the app and reopening works correctly, but closing, swiping from recent apps, then reopening causes the bug.

As for @Nik27's suggestion about toolbar.setSubtitle(null), this doesn't seem reliable. When I tried doing that during the Toolbar's construction, the subtitle with one space, ToolbarLayoutListener.BLANK, still appeared. However when I did it in the corresponding Fragment's onViewCreated, the BLANK subtitle was gone. With both of these cases, the custom font is never set, so it still isn't a complete solution.
The toolbar.setSubtitle(null) call at different times had different results, but both happen after the attaching Activity's attachBaseContext() has been called. So perhaps there's a race condition occurring?

This happened quite randomly. Upgrading to support lib v24.x wouldn't resolve the issue. I think I'm gonna put the Toolbar with no title inside a FrameLayout, then put a TextView with left margin on top of the bar. Kinda fake toolbar title anw but that'd at least likely make the issue away.

@chrisjenx
I don't know if this is actually adding to this issue, but here's what I've found:
First of all I also have the Toolbar in my Fragment class and I'm setting the Activity's SupportActionBar in onCreateView of each fragment.
When my activity is first loaded, the title does not have the custom font but the regular one and also displays an empty subtitle (I don't populate the subtitle).
This is because as though the CalligraphyFactory.ToolbarLayoutListener constructor is called (setting the subtitle to BLANK as noted by @Nik27) the onGlobalLayout method exits prematurely, because the WeakReference of the Toolbar instance returns null at this point. Subsequently the toolbar renders perfectly fine.
So I don't have a solution, yet, but wanted to add my findings to this. I will take another look on Monday.
Thanks for this nice library, btw. Really makes my life easier! :)

Wondering if this fixes it #327

Yes, it appears to, actually. In addition to no "empty" subtitle showing up anymore, the custom font seems to be applied consistently, now. I was counting on the first part being fixed by this, but have to say that I'm a little bit confused about how this fixes the second one. ;)
Although I have to admit that I have troubles reproducing the issues at all with the release version right now. Last week I got the behavior pretty constantly.

@chrisjenx @Bombo
#327 does seem to fix the "empty" subtitle issue. However, it does not seem to fix the custom font not being applied consistently.

This still doesn't work for me. I'm on support 25.1.0.
Everything seems to be ok, but if I start switching between 2 fragments back and forth then after couple of trials toolbar stays aligned to top (invisible subtitle?) with Roboto instead of custom font.
Is there any known workaround? Maybe wrapping TextView inside Toolbar would help?

Could do a custom toolbar. But there is a pull request that might fix this.
On Thu, 22 Dec 2016, 15:32 mzgreen<EMAIL_ADDRESS>wrote:

This still doesn't work for me. I'm on support 25.1.0.
Everything seems to be ok, but if I start switching between 2 fragments
back and forth then after couple of trials toolbar stays aligned to top
(invisible subtitle?) with Roboto instead of custom font.
Is there any known workaround? Maybe wrapping TextView inside Toolbar
would help?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/chrisjenx/Calligraphy/issues/304#issuecomment-268811155,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABHRsQvkfioQBaj3FZlF1EKNaOOvPwHYks5rKooSgaJpZM4JG067
.

What do you mean by custom Toolbar? Put TextView inside and not use toolbar's title property or completely custom view instead on toolbar?

Correct
On Thu, 22 Dec 2016, 16:16 mzgreen<EMAIL_ADDRESS>wrote:

What do you mean by custom Toolbar? Put TextView inside and not use
toolbar's title property or completely custom view instead on toolbar?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/chrisjenx/Calligraphy/issues/304#issuecomment-268820113,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABHRsb3Xrth1-WWaiygcAhoIxQipNh_sks5rKpQjgaJpZM4JG067
.


BEAM-13004 A load test for DebeziumIO that uses postgress as a database

Please add a meaningful description for your change here
Jira description : We need to test that DebeziumIO can work with a small database over a period of 30 or 20 minutes. Let's write a load test that uses Python's ReadFromDebezium and inserts a continuous stream of data into a database for 20 minutes - and finally checks correctness of the streamed output.

Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Choose reviewer(s) and mention them in a comment (R: @username).
[ ] Format the pull request title like [BEAM-XXX] Fixes bug in ApproximateQuantiles, where you replace BEAM-XXX with the appropriate JIRA issue, if applicable. This will automatically link the pull request to the issue.
[ ] Update CHANGES.md with noteworthy changes.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

See the Contributor Guide for more tips on how to make review process smoother.
To check the build health, please visit https://github.com/apache/beam/blob/master/.test-infra/BUILD_STATUS.md
GitHub Actions Tests Status (on master branch)

See CI.md for more information about GitHub Actions CI.

@pabloem - could you please take a look at this PR?

@andoni-guzman is this PR ready for review?

Closing as stale - if that's not right, feel free to comment or reopen


Linux fixes

Dont compare size & blocks on linux; some of the watch event fires seem to be prior to a flush, causing the size and block to report as 0. Then it fires again with non-zero values, causing a false positive.
Use an expiring cache to track deduplications in linux. That trades a small bit of memory overhead to improve correctness.

Fixed

1.1.2

Thanks!
On Thu, May 25, 2017 at 4:00 AM, Mathias Buus<EMAIL_ADDRESS>wrote:

1.1.2
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/mafintosh/recursive-watch/pull/3#issuecomment-303960195,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABNhUwCvQc_qeHpl9i6QNywtflCmSzazks5r9UMxgaJpZM4NitXp
.


dcoumentation: Group annotations together

Group annotations together so that annotations of the same type immediately follow each other, and annotations of a different type are separated by a single blank line
recorded in #69

Thanks @wickedOne!


GNS contract support

[ ] Curator: totalNameSignalledTokens, totalNameUnsignalledTokens
[ ] GraphNetwork: totalTokensSignalledAutoMigrate, totalTokensSignalledDirectly

After checking this, the existing GNS/Curation branch was missing the fields mentioned by @sahra-karakoc in this issue, and the existing code of that branch was already refactor and added to the substream after we started figuring out storage_changes (thanks @sahra-karakoc for the refactor!).
Even though, it seems this isn't crucial for indexer-agent or gateway usage, so I wouldn't count this as super high priority.


Problem with installing

Hello, I'm trying to install PdfViewPager but I'm getting an error as below
Attribute application@label value=(@string/comp_app_name) from AndroidManifest.xml:18:9-50
	is also present at [es.voghdev.pdfviewpager:library:1.0.1] AndroidManifest.xml:13:9-41 value=(@string/app_name).
	Suggestion: add 'tools:replace="android:label"' to <application> element at AndroidManifest.xml:14:5-99:19 to override.

Problem is that I 'laready have tools:replace="icon, theme" in my Manifest. I already tried valious combinations but none of them works. Could you please advice?
Thanks

Which version are you importing? 1.0.0 or 1.0.1?

Hello, I'm using 1.0.1
I have only one manifest and it is as below (already with tools:replace):

<activity
...
Thanks

Hmm
The library is imported in this project for example. If your manifest is similar to this one and there are no clases with other libs, it should be fine.

Another thing you can try is to import 1.0.2. Some users had their issues with previous versions solved with this one.


Ignition Tank Doesn't Work Properly

If you have an Ignition Tank and ignite oil with Sear, enemies that walk onto the ignited oil don't get inflicted with Stronger Burn.

Fixed around a month or so ago.


Astropy Planck[13,15,18] cosmologies implementation

Hi, I would like to know if there is any plan to provide the implementation of Planck[13,15,18].

Thanks for the prompt response.


ContentView strange behaviour

[x] I've read and understood the Contributing guidelines and have done my best effort to follow them.
[x] I've read and agree to the Code of Conduct.
[x] I've searched for any related issues and avoided creating a duplicate issue.

Description

ContentView's subview goes on top of textInputBar.

Reproducible in:

[ ] This is reproducible in the sample project.
SlackTextViewController version: the latest one from git
iOS version(s): iOS 9/10
Device(s): iPhone 5s

Steps to reproduce:

Create a function testSubView() with the code

let view = UIView()
        view.translatesAutoresizingMaskIntoConstraints = false
        view.backgroundColor = .black

        let views = ["test" : view]

        self.textInputbar.contentView.addSubview(view)

        self.textInputbar.contentView.addConstraints(NSLayoutConstraint.constraints(withVisualFormat: "V:|[test(40)]|", options: NSLayoutFormatOptions(rawValue: 0), metrics: nil, views: views))
        self.textInputbar.contentView.addConstraints(NSLayoutConstraint.constraints(withVisualFormat: "H:|[test]|", options: NSLayoutFormatOptions(rawValue: 0), metrics: nil, views: views)))

Call it from viewDidLoad in your subclass of SLKTextViewController
See it works as expected
Call from any other function (in my example, it's a delegate of tableview's cell in my controller.)
It covers the textInputBar

Expected result:

e.g. ContentView should be under the textInputBar

Actual result:

e.g. ContentView  goes on top of textInputBar

Attachments:

expected:

actual:

I'm sure you've figured this out, but I was having the same issue and decided to just give my subview a height constant of 0 to begin with in viewDidLoad, then change it later as needed.

Update: Turns out things break if you don't re-call layout stuff. To get things working (seemingly) 100%, you need to first call layoutIfNeeded on the textInputBar itself, then call slk_updateViewConstraints, which is a private method. Obviously this is wrong, but publicly defining slk_updateViewConstraints was the only thing that would get my views to lay out properly... Any ideas @dzenbot?

I had an issue with some cells appearing beneath my nav bar, even though the table was constrained to be smaller.
The solution was tableView?.contentInset = .zero and tableView.clipsToBounds = true

yes, that’s why that solution is wrong even though it works.

@inb4ohnoes Making slk_updateViewConstraints public and calling layoutIfNeeded before works as expected. Thanks!
@dzenbot I think you should make  slk_updateViewConstraints


[CLOSED] Cosmetic changes: reformating schematrons

 Issue by Klortho
Wednesday Apr 01, 2015 at 21:30 GMT
Originally opened as https://github.com/JATS4R/validation/pull/11

Hey, Jeff,
I worked on this a little bit today -- I am trying to put together instructions for how somebody else might use the schematrons without any prior infrastructure setup.  I couldn't help myself, and gave all the schematrons a cosmetic once-over, here:  just formatting and indenting.
Please take a look and merge this, if you don't mind the changes.  Then, make sure you do a git pull in your local working repository so that you get these changes.
Thanks!

Klortho included the following code: https://github.com/JATS4R/validation/pull/11/commits

 Comment by jeffbeckncbi
Thursday Apr 02, 2015 at 12:47 GMT

Chris,
These look good. Thanks.
It is going to be difficult to come up with command line instructions. We can make a version without phases that will run in xmllint if you think that will be helpful. I do worry about getting too many different schematron files around.
Jeff


Move SPFx webparts into sp-dev-fx-webparts

Category

[ ] Question
[ ] Bug
[x] Enhancement

Expected or Desired Behavior
I should be able to use a single webpart (e.g. Stock Information) from this starter kit, via the PnP webparts. Also, the starter kit should allow me to easily package whichever sp-dev-fx-webparts I like into my customized starter kit.
Observed Behavior
Starter kit has webparts that are unnecessarily distinct from PnP.
What I'd like to happen
Publish an NPM package containing the sp-dev-fx-webparts repository.
Move most of the webparts out of this repository, and into that repository.
Leave one or two webparts in this repository.
OR
Import sp-dev-fx-webparts as a git submodule.

I am going to close this ticket. We are actively working on breaking out the web parts into their own solutions so they can be used individually.


[🐛] Heroku application returning API error

:bug: Bug report
Description
Accessing challenges from http://juice-shop.herokuapp.com/ results in an Application Error. The details are not specific, unfortunately. It appears this Heroku app has crashed.
Is this a regression?
Yes, this has worked before. Earliest I can tell this was broken is 3/19/21, but I don't know how long before that date the application was not responding.
:microscope: Minimal Reproduction
Access this URL: http://juice-shop.herokuapp.com/

Seems you just had bad luck and visited the app during one of its occasional restarts. Works fine for me right now and I didn't get any other complaints or see monitoring go wild.

Ah, just my luck. Thanks for the quick response!


Small Fixes

Collection of fixes that don't necessarily merit their own PRs:

[X] add return air differential pressure sensor
[ ] add other differential pressure sensor "flavors"
[X] add cooling tower
[X] define heat wheel
[X] add "air handling unit' as more common term (the existing "air handler unit" class isn't quite right, but we aren't deprecating it)
[X] fix direction command  (https://github.com/BrickSchema/Brick/issues/157)

Hi @gtfierro, so you will add a cooling tower tag in Brick.ttl later?

Yes, for sure! It is a long-standing oversight that I finally had time to fix. Are there properties/types of cooling towers that you would like to see added to Brick as well?

@gtfierro for now I just need cooling tower tag so I can set relationship between cooling tower fan and cooling tower, Thanks!

Wonderful! Feel free to use brick:Cooling_Tower as that class for now.


[Model Request] [Android] llama2_7b_chat_uncensored by georgesung

⚙  Request New Models

Link to an existing implementation (e.g. Hugging Face/Github):
Original:
georgesung/llama2_7b_chat_uncensored
https://huggingface.co/georgesung/llama2_7b_chat_uncensored
GGML:
TheBloke/llama2_7b_chat_uncensored-GGML
https://huggingface.co/TheBloke/llama2_7b_chat_uncensored-GGML
GPTQ:
TheBloke/llama2_7b_chat_uncensored-GPTQ
https://huggingface.co/TheBloke/llama2_7b_chat_uncensored-GPTQ

Is this model architecture supported by MLC-LLM?
Yes (it's llama2)

Additional context
Pls add this model to Android it's 7b and should work like viccuna 7b. This model also doesn't have the problem of denying to kill JavaScript processes like the official llama 2 chat model.
The prompt style is on the Hugging Face page I linked:
### HUMAN:
Hello

### RESPONSE:
Hi, how are you?

### HUMAN:
I'm fine.

### RESPONSE:
How can I help you?
...

As it's with the same arch as llama-2, you can use the same instruction at here but only use a different weight.
Additionally, there are too many different weights (e.g. official, uncensored, qlora), but we have limited bandwidth and cannot support all of them. We welcome the community to build and upload their own weight while we are focus on the different model arch

Hi @FreeCode4All , the prebuilt models for georgesung/llama2_7b_chat_uncensored are added to huggingface:

https://huggingface.co/mlc-ai/mlc-chat-llama2-7b-chat-uncensored-q4f32_1/tree/main
https://huggingface.co/mlc-ai/mlc-chat-llama2-7b-chat-uncensored-q4f16_1/tree/main

My last update is that I was able to edit the json to match the prompt style better (according to my understanding) and now the f16 model is the best model I was ever able to run on my phone (it's slow and sometimes crashes but it works). Editing that file without root wasn't trivial since Android limits which apps have access to that folder and it's files but it worked with the right apps.
Again thx to @CharlieFRuan

Thank you for the updates! Closing this one for now; if any more problems persist, feel free to open a new issue.

hi @CharlieFRuan
unfortunatly the problem of prompt style of this model has made it almost useless as the AI frequently answers itself.
could you please edit the json file on Hugging Face so that everyone can download and use this fantastic model without any issues?


Search button looses highlighting effect if cursor if moved out while button still pressed.

1.Open Explorer Page.
2.Press Search button and keep it pressed.
3.Move the cursor Out.
It should remain in the active state

@rhyslbw @a-rukin @DominikGuzei done


Tree-based FastKick?

FastKick is very useful in Bridged simulations, but it scales with N1*N2, making it still a bottleneck in simulations with many particles (especially where N1 ≈ N2).
Since codes like gadget and phantom don't (yet) support get_gravity_at_point directly, it would be helpful to have a tree-based slim kicker code (preferably OpenMP-enabled) for such simulations. This would scale with log(N1)*N2.

Fi is tree based ad openmp parallel, but I agree that another code might be nice...bonsai on GPU would be nice...

bonsai currently has a host implementation of get_Gravity_at_point...so thats not so nice...maybe something like adding ghost particles with zero mass and then doing a a single gravity evaluation (and removing zero mass parts again) would work..

I am pretty sure @jbedorf should be able to hack something in quickly ;-)

Yes I used Fi for this before, but it seems to complain about a “too short timestep” sometimes... which is weird for a kick-only code, since it doesn’t require a timestep.

yea, it initializes always, necessitating a timestep shift (maybe this could be turned off)

To summarise:

A bug in Bridge was causing codes to do internal force calculations, which prevented them from calculating just the kick
Fi can indeed do this and is now suitable for my purpose
It would still be nice to have a dedicated "TreeKick" code (so I'm keeping this issue open)


Refactor attributes and improve argument parsing

Remove redundant stripping of whitespace
Expand usage of argparse to handle CLI options
Refactor attribute handling

:+1:  to keeping things as dicts/lists for as long as possible, rather than prematurely converting to strings.


Implement a detection for players leaving the game by closing their tab

closed https://github.com/sopra-fs24-group-12/PeekSeek-client/commit/8cfd82c83c3093636c6a8f18dd02e5d8969491ac


Use slurp macro to read styles from .css file

This PR allows introduces a macro to wrap clojure's slurp function, to read CSS from a proper .css file (previously the CSS was defined as a string).
closes #24

I tried it on the todomvc example project and it seems to be working!

Oh wait, what I actually tried was installing the lastest published version on clojars. How do I install my branch of my local version? (I tried to look it up and the internet told me to use checkouts (??))

@daiyi I suggest:

cd to the re-frame-trace repo, and go your slurp-css branch
Run lein install (which will install your /re-frame-trace/target/trace-0.1.4-SNAPSHOT.jar or something similar into a local repo)
Create a new folder, cd to it, and clone a fresh todomvc project into it (without creating a checkouts file)
Add the dependency to the todomvc project (I think [day8.re-frame/trace "0.1.4-SNAPSHOT"])
Try it out!

Btw, i'm curlyfry on the clojurians slack if you wanna discuss anything there (ping @saskali  as well).

I think this is closed by merging #60.

I tested this on our project and the CSS came in fine.


chore(release): 0.2.7

@paolodamico Maybe I'm missing something, but as far as I know, when we update idkit version, we should also update it in example-react & example-nextjs package.json files (here & here). I had some problems with the local install before because of this.


test_tf: NameError: global name 'crop_image' is not defined

I'm new to Tensorflow and deep learning, just found your code and make a test run. But I got this error:
.......
File ".../show_and_tell.tensorflow-master/model.py", line 269, in read_image
img = crop_image(path, target_height=224, target_width=224)
NameError: global name 'crop_image' is not defined
Does this means lacking some library?
My environment:
Win 10 pro, tensorflow.0.10.0 and phython 2.7.6
Best regards,

Ooops!
I'm sorry. It's my mistake. I removed import cnn_util because I used pretrained model and crop_image() was there.


Missing versions on FoundryVTT Website

The module does not update to the newest, 1.19.1 version due to the FoundryVTT website not having it listed.
Please, update your release.yml file to do this automatically for you. You can get the new way of doing so from my modules, as an example

The latest version links to releases/latest, it doesn't need to be updated on the admin page for every single release.

The latest version links to releases/latest, it doesn't need to be updated on the admin page for every single release.

It would be beneficial given the fact that people on 1.18 are stuck there until they reinstall (because of the v difference) and come to other modules with issues that wouldn't exist if the module updated itself properly.

I would make a PR to have this automated but it requires having the login credentials in your GitHub secrets.

Yes, one of the issues is that this repo is the League's, not mine, but I own the package in the foundry admin page. I'll try transfering this repo to me.


Error in ocropus-econf with some k-options

The function ocropus-econf returns an error when comparisons should only be done among the letters or digits, i.e.
$ ocropus-econf -k digits output/*/*.gt.txt
Traceback (most recent call last):
  File "/usr/local/bin/ocropus-econf", line 59, in <module>
    outputs = sorted(list(outputs))
  File "/usr/local/lib/python2.7/dist-packages/ocrolib/common.py", line 560, in parallel_map
    result = fun(e)
  File "/usr/local/bin/ocropus-econf", line 50, in process1
    err,cs = edist.xlevenshtein(txt,gt,context=args.context)
  File "/usr/local/lib/python2.7/dist-packages/ocrolib/edist.py", line 43, in xlevenshtein
    cost = current[n]
UnboundLocalError: local variable 'current' referenced before assignment

Okay, it seems that the function xlevenshtein(a,b,context=1) is not yet covering the boundary cases:

a="", b="" --> I guess we can simply catch that case in the beginning and output the correct thing, maybe return 0,[]
a=/="", b="" --> Maybe, the simplest would be to call xlevenshtein(b,a,context=1). Then the cost should be the same and we just have to swap each entry of the confusion matrix list.

The implementation in hocr-tools looks different and it seems to exactly deal also with these cases: https://github.com/tmbdev/hocr-tools/blob/master/hocr-eval-lines#L36-L57


Some benchmarking problem

Hello, professor. I've recently built volepsi on my machine.
When using ./frontend -perf -psi -nn 20 -v -nt 1 -t 5 for testing, the message below appeared.
t 1 fakeBase 0 n 1048576
coproto::code::remoteClosed: The connection has been closed by the remote party.
coproto::code::badCoprotoMessageHeader: Received a corrupted/invalid protocol message header
coproto::code::remoteClosed: The connection has been closed by the remote party.
coproto::code::badCoprotoMessageHeader: Received a corrupted/invalid protocol message header
coproto::code::remoteClosed: The connection has been closed by the remote party.
coproto::code::badCoprotoMessageHeader: Received a corrupted/invalid protocol message header
coproto::code::remoteClosed: The connection has been closed by the remote party.
coproto::code::badCoprotoMessageHeader: Received a corrupted/invalid protocol message header
Label     Time (ms)  diff (ms)
__________________________________
end           725.1    725.075  **********
begin         729.0      3.881  **
end           932.8    203.815  ********
begin         932.8      0.006
end          1116.3    183.533  ********
begin        1116.3      0.006
end          1300.7    184.335  ********
begin        1300.7      0.006
end          1481.3    180.622  ********

23693261 10690853

There're two questions:

Why there're remoteClosed and badCoprotoMessageHeader message taking place?
The 2nd to 4th rounds are much faster than the first round. It is because these failures? (I mean, the remoteClosed and badCoprotoMessageHeader errors.)

yes, you should not trust the running times. Its unclear to me what the cause is.

Right, I've got that.
Thanks professor.


Repalce space attribute key OwnerId by OwnerID

s/OwnerId/OwnerID for space struct

@pranavgore09 snapshot fabric8-wit image is available for testing.  docker pull docker.io/fabric8/fabric8-wit:SNAPSHOT-PR-1731-1

@pranavgore09 snapshot fabric8-wit image is available for testing.  docker pull docker.io/fabric8/fabric8-wit:SNAPSHOT-PR-1731-2

thanks @DhritiShikhar

@pranavgore09 snapshot fabric8-wit image is available for testing.  docker pull docker.io/fabric8/fabric8-wit:SNAPSHOT-PR-1731-3

Codecov Report

Merging #1731 into master will not change coverage.
The diff coverage is 85.18%.

@@          Coverage Diff           @@
##           master   #1731   +/-   ##
======================================
  Coverage    56.9%   56.9%
======================================
  Files         128     128
  Lines       14910   14910
======================================
  Hits         8484    8484
  Misses       5747    5747
  Partials      679     679

Impacted Files
Coverage Δ

space/space.go
62.59% <0%> (ø)
:arrow_up:

controller/work_item_link.go
78.84% <100%> (ø)
:arrow_up:

controller/area.go
87.56% <100%> (ø)
:arrow_up:

controller/space_iterations.go
75.75% <100%> (ø)
:arrow_up:

controller/workitemtype.go
78.3% <100%> (ø)
:arrow_up:

controller/space_codebases.go
75.4% <100%> (ø)
:arrow_up:

controller/space.go
77% <100%> (ø)
:arrow_up:

iteration/iteration.go
62.85% <100%> (ø)
:arrow_up:

controller/workitems.go
81.56% <100%> (ø)
:arrow_up:

controller/iteration.go
77.06% <50%> (ø)
:arrow_up:

... and 1 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 76d5d24...7fc9d6b. Read the comment docs.

This is for golint, right?

right! @baijum


Migrate from react-loadable to loadable-components (or other alternatives)

Currently, with react-loadable:

react-loadable doesn't seem maintained anymore, just take a look at the "issues" list (open PRs for multitudes of fixes) dating back to 2018 https://github.com/jamiebuilds/react-loadable/pulls?q=is%3Apr+is%3Aopen+sort%3Aupdated-desc
react-loadable does not support React 17.X.X due to it still referencing the deprecated and now removed/to-be-removed componentWillMount:react-dom.development.js?61bb:67 Warning: componentWillMount has been renamed, and is not recommended for use. See https://reactjs.org/link/unsafe-component-lifecycles for details.

* Move code with side effects to componentDidMount, and set initial state in the constructor.
* Rename componentWillMount to UNSAFE_componentWillMount to suppress this warning in non-strict mode. In React 18.x, only the UNSAFE_ name will work. To rename all deprecated lifecycles to their new names, you can run `npx react-codemod rename-unsafe-lifecycles` in your project source folder.

Please update the following components: LoadableComponent

💥 Proposal
I haven't dived too deep into the Docusaurus codebase but it seems like even according to the official React docs here https://reactjs.org/docs/code-splitting.html#reactlazy, the recommended loadable in React with code-splitting support and SSR is loadable-components https://github.com/gregberge/loadable-components, which seems like something that should be moved towards to allow easy support of newer React versions.
Perhaps there are also other alternatives if the above mentioned one isn't ideal for whatever reason. Opening this issue for conversation on this topic.
Have you read the Contributing Guidelines on issues?
Yes

Thanks
You are right that we should find a future-proof solution to this problem.
It does not look so simple to do that switch, but it's on my plans to look at all this and ensure that we rely on modern/well-maintained deps that keep up with new React versions.

+1

FYI next version will use React 17 by default, and I've published a fork of react-loadable to get rid of the dev deprecation warning.
https://github.com/facebook/docusaurus/pull/4218
We'll still have to migrate or find a solution to support React 18 though so I'll keep this issue open

Next.js 13.x + Webpack is apparently also using a fork of react-loadable: https://github.com/vercel/next.js/blob/canary/packages/next/src/shared/lib/loadable.tsx
(I think they use Rust code when Turbo is enabled)
Today loadable-components does not look much maintained: their docs still mention that React does not support Suspense for SSR/SSG, while it does now.
Are there good reasons to actually migrate anymore? It looks like we'd have to build/maintain our own fork or custom solution (like Next.js) in the future, and there's no more mainstream open-source lib to do that.

@slober I've just updated to docosaurus v3 and saw that the following error fires a ton:

Kind of hard to see actual error while working in dev

The react-loadable warning is due to React v18.3 release outputting new warnings to prepare us for React v19.
https://react.dev/blog/2024/04/25/react-19-upgrade-guide
Already fixed here but not released: https://github.com/facebook/docusaurus/pull/10079
Until it gets merged/released, revert to React v18.2

FYI I'm going to close this for now.
I'm still maintaining/upgrading our react-loadable fork here: https://github.com/slorber/react-loadable
It should now be compatible with React 18.3 / React 19, and the code we use is relatively small so that I'm confident I'll be able to keep it up to date in the future. More info: https://github.com/jamiebuilds/react-loadable/pull/213#issuecomment-2079587821

I don't think loadable-components is the right choice either. It's not super well maintained and is tightly coupled to Babel/Webpack from which we are likely to move off at some point. If we ever implement something, it's likely to be our own custom solution (Next.js kind of does this too, using internal code inspired from loadable-components).
Also, it's very possible that using React Server Components (tracked in https://github.com/facebook/docusaurus/issues/9089) will reduce the need for such a solution in the future since our code-splitted route components will now become RSCs. I'd prefer to wait until we support RFCs and see if we still need such a library.


Native module RNGoogleFit tried to override GoogleFitModule

Hi, I got this error message after trying to build my application, here some screenshots of the message and my code.
I followed those steps for installation:
$ react-native link react-native-google-fit
then pass your package name to the module in MainApplication.java (google fit requires package name to save data)
new GoogleFitPackage(BuildConfig.APPLICATION_ID) Note: Do not change BuildConfig.APPLICATION_ID - it's a constant value.
Thank you

You don't need to link the package if your react native version is above ^0.60.
Unlink it first and try it again.

Hi, thank you for your reply, I can start my app removing the link, but I keep getting "Authorization cancelled". Maybe I did something wrong (I'm learning code) so here are all the steps I followed :
1- npm install react-native-google-fit --save
2- I enabled Google Fit API on my Google API console et generated a new client ID (tested with debug and release SHA keys)

3- Configured the consent screen with external users (adding my gmail address)
4- Activated my SDK

5- I made a signed APK (I don't know if I had to)
6- react-native link react-native-google-fit (I didn't add the GoogleFitPackage and I tried without linking)
7- My code :

8- I also tried to add these lines in my build.gradle :

I must missing something but I don't know what...
(I'm working on AVD)
I generated a Client ID but I never use it anywhere, do I need to use it in my app?

hi @blamont33 did you find something useful?
I am also stuck on the same error.

You don't need to link the package if your react native version is above ^0.60.
Unlink it first and try it again.

It work for me. Thanks !

@blamont33
just remove
import com.reactnative.googlefit.GoogleFitPackage;
packages.add(new GoogleFitPackage(BuildConfig.APPLICATION_ID));
in MainApplication.java


192 include timestamp at the beginning of all file names

I added the timestamp at the beginning of every file and also reformatted the timestamp string to be yymmdd instead of the timestamp float that was being used before.

Closing to follow proper workflow in the correct PR.


Add stream-time metric to GPU hash joins

I need a stream time in the GpuHashJoin.

Can one of the admins verify this patch?

Hi @JustPlay , I was seeing https://github.com/NVIDIA/spark-rapids/actions/runs/249446695. It looks like your account has not setup a verified email address? can you help set it up so our github actions could be triggered accordingly. Thanks!

https://github.com/NVIDIA/spark-rapids/actions/runs/249446695

done

Thanks for the contribution, @JustPlay!
Note that you will need to sign-off on your commits per the instructions in the contributors guide.  This can be done by git commit --amend -s and force-pushing or you can sign-off on a followup commit (e.g.: to address review comments).
Also we are actively in burndown for the 0.2 release, ideally finishing up outstanding PRs by the end of today.  As such this may end up needing to be moved to branch-0.3 for the 0.3 release.

@JustPlay, curious why this was closed?

Ah, it looks like this has been superceded by #756.


What do you do with this module when additional virtual methods are added to the base Debugger class?

@PaulHigin: PSThreadJob currently supports Windows PowerShell 5.1 and later. In PowerShell/PowerShell, I've added virtual methods to the base Debugger class as part of the PR I was working on to allow managing breakpoints in runspaces and remote jobs (or thread jobs once PR #41 is merged/included in PSThreadJob).
With this module being external to PowerShell (Core), what do we do when the Debugger base class that this module's ThreadJobDebugger class derives from gets additional virtual methods that you want to override? Since this requires 5.1, and that version of the base class won't have those overrides, I'm not sure what the best path forward is here, other than to have two different versions of the binary module: one for 5.x/6.x, and another for 7+.
Further, the ThreadJobDebugger base class implements pass-thru overrides for many methods that just call into a wrapped debugger, much like RemotingJobDebugger, NestedRunspaceDebugger, and ServerRemoteDebugger (although that last one uses an ObjectRef<Debugger> instead of just a Debugger for the _wrappedDebugger field). Wouldn't it be better to define a RemoteRunspaceDebugger class that handles the usage of a wrapped debugger and the invocation of wrapped debugger passthru methods in its implementation, and then derive other debuggers from that one for the few overrides in those debuggers that are needed such as HandlePromptCommand? Doing that would remove a lot of repeated logic, and give us an internally managed base class that could be used in binary modules external to PowerShell, allowing debuggers to be hooked up with all of the overrides invoking the wrapped debugger methods regardless of the version of PowerShell being used. If we had that already, then ThreadJobDebugger could have derived from that, and we wouldn't need to worry about additional virtual methods being added to the base class in later versions of PowerShell because they would be automatically handled.

I don't want to have multiple builds/versions of ThreadJob.  I feel new support for job debugging features is not as important as maintaining compatibility with Windows PowerShell 5.1.  So I don't plan to add new features that require splitting the code base.


Consistent return value question

I have implemented our eslint config to our b2b core framework and in this process I discovered this "peculiar" rule called consistent-return
Example:
function (param) {
  if (param === false) {
    return;
  } else {
    // do something
    return param;
  }
}

To comply with this rule the empty return statement needs to return "something". So return void 0; is a valid expression. return void 0; basically returns undefined which return; also does.
I my opinion return void 0; looks more clutter than just plain return;.
Another example:
var dateMinLimit = attr.dateMinLimit || void 0;
Why assign void 0 (undefined) if attr.dateMinLimit is undefined?
What do you guys think? Maybe the return void 0; is a symptom of a bad code style somewhere else in the code?

@fernicolosi

@b-dur even though this rule has one very valid use case, I think it should be removed. Having to return undefined or using void operator clutters the code with weird looking logic.
Here's the case when this rule is actually useful:
// eslint error
function doSomething(condition) {
    if (condition) {
        return true;
    }
}

I wouldn't mind removing it either. It would be nice to have a rule that makes it impossible to write functions that either return something or not based on flow inside the function, but that's not possible with this rule I guess?

@madsgodvinjensen It actually does exactly that. It enforce you to either return a value or return no value.
The use case that @halfzebra is making would fail if the rule is set cause only one condition returns true the other (else) condition doesn't return anything.

I personally think it's clutter. We don't want to end up having to write Java ;)

@b-dur : Forcing a return value even if it is undefined is an overkill, I don't see the problem ignoring that rule 👍

Alright then lets vote.
Add your reaction to this comment.
👍 for yes - let us remove that rule
👎 for no - we should keep the rule

@b-dur Not feeling strong about that rule - I'm okay with removing it 🔥 .
Here's another take on that rule and why it might be useful (but again, not feeling it):
https://stackoverflow.com/a/36209076

@martinbuberl Exactly. When that linter error happens it could mean a bad coding practice was applied and one should rethink on how to structure the code slightly different.

@b-dur Just following up on this issue. I believe the votes have spoken. Shall we remove that rule, or can we close the issue?

@martinbuberl Let's remove the rule and close this issue

@martinbuberl Could you CR #22

Resolved in PR #22


Migrating a cloudrig snapshot to a new availability zone?

I'd like to migrate my cloudrig from one availability zone to another.  How can I do so?  I'm comfortable with the aws web console, and also have the aws cli installed on my Linux machine.  I've copied the Snapshot [edit: and AMI!] over to the target availability zone, but... how do i get it to be 'discovered' by cloudRIG?  It seems to want to make a new image for me.  Or would it be easier to just let it make a new image for me and then rename my copied-over image to that one somehow?  Please help!

Hi @pjz, an AMI can be launch on all the AZ of the AWS Region.
What I'm doing to change the AZ is that I came back to the first menu (configure), change the AZ and then continue the wizard with it. Then cloudRIG will automatically use the AMI already created.
Is that solving your problem?

I had to re-tag the AMI once I copied it over, was the problem. For the record, to shift to a new region, you need to:

Find your Snapshot, copy it to the new region.
Find your AMI, copy it to the new region.
Fix the tags on the AMI. ('cloudrig' = 'true', I believe)
Point cloudrig at the new region.


fix: add will-change:transform to shadow and ghost cardlinks

Prevents text 'jumping' because there is no compositing change on hover anymore.

That’s great, thanks 🙏


Feature Request: Last tag refresh if possible

First of all, Really Thanks for the hard word. I just found this and flash it yesterday. it works so great, Thanks!
I did not use esphome-door-lock as a door lock but just a trigger for automation in Home Assistant. however, I found the last tag ID and description will remain unchanged until it read other tag or card.
So wonder is it possible to make the code to resend the id and description ever time when tag to RFID.

Please ignore. Use reset_command to solved the issue. Thanks ^^

Would you mind sharing where you find or include this reset_command? @bluefoxlee thanks

@Harryjholmes I am using the NFC reader with Home Assistant, so I mean the rest_command from Home Assistant instead of esphome itself.


GetProperty doesn't work properly when name contains whistespace at beggining

Hi,
It look like a property isn't saved or grabbed correctly when it's named with a whitespace at the beggining. You can try with the following code:
console.log(window.GetProperty(" space", "space1"));
window.SetProperty(" space", "space2");
console.log(window.GetProperty(" space"));
In the console you will get
space1
space2
No matter how many time you refresh the console

Thanks for the report =)


trusted-firmware-m: update manifest pointer for TF-M module

Update the manifest pointer for the tf-m module
to pull in latest master.
Signed-off-by: Ioannis Glaropoulos<EMAIL_ADDRESS>

The tf-m module has already been update here: https://github.com/zephyrproject-rtos/trusted-firmware-m/pull/41, but Zephyr manifest pointer was not updated.

The tf-m module has already been update here: https://github.com/zephyrproject-rtos/trusted-firmware-m/pull/41, but Zephyr manifest pointer was not updated.

the diff:
i9:tfm((HEAD detached at dcfa70e)): git diff dcfa70e66e91d9bf31fd6f083e2fba19b4305f4e..96340fb
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 5a9b2f0..7a32ba3 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -127,8 +127,6 @@ function(trusted_firmware_build)
                ${TFM_PROFILE_ARG}
                -DTFM_TEST_REPO_PATH=${ZEPHYR_TFM_MODULE_DIR}/tf-m-tests
                -DMCUBOOT_PATH=${ZEPHYR_TFM_MODULE_DIR}/../tfm-mcuboot
-               -DTFM_TOOLCHAIN_PATH=${TFM_TOOLCHAIN_PATH}
-               -DTFM_TOOLCHAIN_PREFIX=${TFM_TOOLCHAIN_PREFIX}
     BUILD_ALWAYS True
     USES_TERMINAL_BUILD True
     BUILD_BYPRODUCTS ${BUILD_BYPRODUCTS}

the diff:
i9:tfm((HEAD detached at dcfa70e)): git diff dcfa70e66e91d9bf31fd6f083e2fba19b4305f4e..96340fb
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 5a9b2f0..7a32ba3 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -127,8 +127,6 @@ function(trusted_firmware_build)
                ${TFM_PROFILE_ARG}
                -DTFM_TEST_REPO_PATH=${ZEPHYR_TFM_MODULE_DIR}/tf-m-tests
                -DMCUBOOT_PATH=${ZEPHYR_TFM_MODULE_DIR}/../tfm-mcuboot
-               -DTFM_TOOLCHAIN_PATH=${TFM_TOOLCHAIN_PATH}
-               -DTFM_TOOLCHAIN_PREFIX=${TFM_TOOLCHAIN_PREFIX}
     BUILD_ALWAYS True
     USES_TERMINAL_BUILD True
     BUILD_BYPRODUCTS ${BUILD_BYPRODUCTS}

the diff:
i9:tfm((HEAD detached at dcfa70e)): git diff dcfa70e66e91d9bf31fd6f083e2fba19b4305f4e..96340fb
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 5a9b2f0..7a32ba3 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -127,8 +127,6 @@ function(trusted_firmware_build)
                ${TFM_PROFILE_ARG}
                -DTFM_TEST_REPO_PATH=${ZEPHYR_TFM_MODULE_DIR}/tf-m-tests
                -DMCUBOOT_PATH=${ZEPHYR_TFM_MODULE_DIR}/../tfm-mcuboot
-               -DTFM_TOOLCHAIN_PATH=${TFM_TOOLCHAIN_PATH}
-               -DTFM_TOOLCHAIN_PREFIX=${TFM_TOOLCHAIN_PREFIX}
     BUILD_ALWAYS True
     USES_TERMINAL_BUILD True
     BUILD_BYPRODUCTS ${BUILD_BYPRODUCTS}

Thanks for taking the trouble to upload the diff @nashif

the diff:
i9:tfm((HEAD detached at dcfa70e)): git diff dcfa70e66e91d9bf31fd6f083e2fba19b4305f4e..96340fb
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 5a9b2f0..7a32ba3 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -127,8 +127,6 @@ function(trusted_firmware_build)
                ${TFM_PROFILE_ARG}
                -DTFM_TEST_REPO_PATH=${ZEPHYR_TFM_MODULE_DIR}/tf-m-tests
                -DMCUBOOT_PATH=${ZEPHYR_TFM_MODULE_DIR}/../tfm-mcuboot
-               -DTFM_TOOLCHAIN_PATH=${TFM_TOOLCHAIN_PATH}
-               -DTFM_TOOLCHAIN_PREFIX=${TFM_TOOLCHAIN_PREFIX}
     BUILD_ALWAYS True
     USES_TERMINAL_BUILD True
     BUILD_BYPRODUCTS ${BUILD_BYPRODUCTS}

Thanks for taking the trouble to upload the diff @nashif


Colored clue scroll names can be hard to see depending on chatbox background.

for example, the yellow "elite" does not show up well at all on the opaque chatbox.
One solution could be to allow customizable colors. But this would require people to customize the colors and that is too much effort imo. Detecting whether the chatbox is opaque or not and picking a color based on that would be better.

This has been fixed, I forgot to close the issue.


Python 3.5 Import Error

Hello, Alan!
After installation on Fedora 25, Python 3.5, I met next trouble.
Traceback (most recent call last):   File "/bin/protect", line 7, in <module>     from rm_protection.protect import protect   File "/usr/lib/python3.5/site-packages/rm_protection/protect.py", line 5, in <module>     from config import Config ImportError: No module named 'config'
I fixed it by changing:
from config import Config
to:
from .config import Config
Is it my local problem or bug in the app?
P.s: I installed rm-protection globally on my system

Hi,
Thanks for the bug report! It seems that different Python versions handle the import statement differently. Now I have made the import statement explicit. My fault.
Now the latest commit should fix this issue, and you can install it again from PyPi.

Thanks


Uploading old TIFF files (maybe corrupt or to old tiff format) results into an error (tested witch files created back in 2008)

Expected behavior
When uploading old tiff files, the process of uploading them should complete or give a detailed error message as to why it stopped.
Actual behavior
When uploading old tiff files the process stops after a few seconds marks the file as an error and when hovering over the file it shows the description: "error". It would be nice to show a detailed errorstring or maybe even no error at all.
Screenshots
Steps to reproduce the issue
Because of data privacy i can't give you any of the files for testing purposes, which will make this very hard to reproduce.
Found Workaround
There is a current workaround that fixes this problem. When opening a tiff in the standard windows viewer, you can rotate the picture. What many don't know, if you rotate a tiff in one direction and close it, windows saves the tiff in the windows default tiff format.
So the workaround to fix this, is rotate->close->open->rotate back->close. And then the upload works. So my guess is that the tiff format of those old files is either corrupt or currently can't be handled by dropzone.
APEX version (4.2.6 / 5.0.3)
APEX version <IP_ADDRESS>.09
Used web server / version and platform (ORDS 3.0.3 / Tomcat 7 / Apache 2.4 / Linux x64)
Tomcat - Don't know which version exactly
Used web browser / version and platform (Chrome 48 Mac / Firefox 44 Windows)
Internet Explorer 11.0.9600.18893

Hi @Jzagorac
hmm sounds weird...Thus you are not allowed to share such a file, it´s very difficult for me to dig into this...
Does this happen in all browsers or only in IE? Can you test it e.g with an current chrome?
Are there any errors in the browser console during upload?
My assumption is that it has more to do with the underlying dropzone library. Maybe an error where images get converted to an preview image, and old tiff files making problems with this...

Hi Dani3lSun
Thanks for the quick response,
i got the same error with Chrome but it looks slightly different, I added the screenshots to the same folder as linked in the original post. I also Added a Screenshot of the Browser Console of Chrome and IE and a screenshot of the Debugger of IE
Because the default language of our IE is german and it's not changeable I'll translate some of the words over here:
Unbekannter Fehler - Unknown Error
Datei - File
Zeile - Row
Spalte - Column
From the Debugger and Console message it seems that your Assumption is right.

Hi @Jzagorac
Ok it is indeed the thumbnail generation...
You can try to include some try-catch block in the detectVerticalSquash of dropzone.js like so:
var detectVerticalSquash = function detectVerticalSquash(img) {
  try {
    var iw = img.naturalWidth;
    var ih = img.naturalHeight;
    var canvas = document.createElement("canvas");
    canvas.width = 1;
    canvas.height = ih;
    var ctx = canvas.getContext("2d");
    ctx.drawImage(img, 0, 0);

    var _ctx$getImageData = ctx.getImageData(1, 0, 1, ih),
      data = _ctx$getImageData.data;

    // search image edge pixel position in case it is squashed vertically.

    var sy = 0;
    var ey = ih;
    var py = ih;
    while (py > sy) {
      var alpha = data[(py - 1) * 4 + 3];

      if (alpha === 0) {
        ey = py;
      } else {
        sy = py;
      }

      py = ey + sy >> 1;
    }
    var ratio = py / ih;

    if (ratio === 0) {
      return 1;
    } else {
      return ratio;
    }
  } catch (err) {
    return 1;
  }
};

After that you have to minify the file and upload it again to the plugin files...
Or you open up a issue on the dropzone lib directly, maybe the author can fix that bug in the library:
https://gitlab.com/meno/dropzone/issues

You can also try to disable thumbnail generation for this particular dropzone:

Give you dropzone region a static id, e.g MY_DROPZONE_REGION
Create a DA on page load, executing JavaScript:

var dropzoneElement = $("div#MY_DROPZONE_REGION_dropzone").get(0);
var myDropzone = dropzoneElement.dropzone;
myDropzone.options.createImageThumbnails = false;

Thanks again :)
I'll try your suggestions and reply if any of them worked :)
Is it okay if i link this issue in the new issue of the dropzone lib, so i don't have to explain everything again?

Yeah sure! :)


How to deserialize maybe-borrowed maybe-copied data?

For example, serde-json can sometimes return borrowed data and sometimes return copied data, depending on whether it was reading from a Read or a slice and whether it had to escape any data: https://docs.serde.rs/src/serde_json/de.rs.html#993
How can this be handled in a way that gives us zero-copy if possible but can also do a copy if needed?
I think the current API always forces us to allocate, but ideally this can be handled using a Cow<'a, str> or similar, can't it?

As you suspected, this can be handled using Cow<str> or similar.
#[macro_use]
extern crate serde_derive;

extern crate serde;
extern crate serde_json;

use std::borrow::Cow;

#[derive(Deserialize)]
struct Sid0<'a> {
    #[serde(borrow)]
    cow: Cow<'a, str>,
}

fn main() {
    let a = serde_json::from_str::<Sid0>("{\"cow\":\"A\"}").unwrap();
    match a.cow {
        Cow::Borrowed(s) => println!("borrowed: {}", s),
        Cow::Owned(s) => println!("copied: {}", s),
    }

    let b = serde_json::from_str::<Sid0>("{\"cow\":\"\\u0042\"}").unwrap();
    match b.cow {
        Cow::Borrowed(s) => println!("borrowed: {}", s),
        Cow::Owned(s) => println!("copied: {}", s),
    }
}

Ah, the thing I was missing was that wrapping Cow in Vec doesn't appear to work (does this even make sense?)
#[derive(Deserialize)]
struct Sid0<'a> {
    #[serde(borrow)]
    cow: Vec<Cow<'a, str>>,
}

fn main() {
    let a = serde_json::from_str::<Sid0>("{\"cow\":[\"A\"]}").unwrap();
    match a.cow[0] {
        Cow::Borrowed(ref s) => println!("borrowed: {}", s),
        Cow::Owned(ref s) => println!("copied: {}", s),
    }

    let b = serde_json::from_str::<Sid0>("{\"cow\":[\"\\u0042\"]}").unwrap();
    match b.cow[0] {
        Cow::Borrowed(ref s) => println!("borrowed: {}", s),
        Cow::Owned(ref s) => println!("copied: {}", s),
    }
}

prints out
copied: A
copied: B

Oh working with collections + attributes is currently obnoxious because we don't yet have a way to apply attributes to the content of a collection. This is tracked in #723.
It is possible to make it work but unless you really need it, I would recommend sticking to owned types in collections (just like you would have in any previous version of Serde).
#[macro_use]
extern crate serde_derive;

extern crate serde;
extern crate serde_json;

use std::borrow::Cow;
use std::fmt;

use serde::de::{Deserializer, Visitor, SeqAccess};

#[derive(Deserialize)]
struct Sid0<'a> {
    #[serde(borrow, deserialize_with = "vec_cow")]
    cow: Vec<Cow<'a, str>>,
}

fn vec_cow<'de, D>(deserializer: D) -> Result<Vec<Cow<'de, str>>, D::Error>
    where D: Deserializer<'de>
{
    struct VecCow;

    impl<'de> Visitor<'de> for VecCow {
        type Value = Vec<Cow<'de, str>>;

        fn expecting(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
            formatter.write_str("an array")
        }

        fn visit_seq<A>(self, mut seq: A) -> Result<Self::Value, A::Error>
            where A: SeqAccess<'de>
        {
            #[derive(Deserialize)]
            struct Wrapper<'a>(#[serde(borrow)] Cow<'a, str>);

            let mut vec = Vec::new();
            while let Some(wrapper) = seq.next_element::<Wrapper>()? {
                vec.push(wrapper.0);
            }
            Ok(vec)
        }
    }

    deserializer.deserialize_seq(VecCow)
}

fn main() {
    let a = serde_json::from_str::<Sid0>("{\"cow\":[\"A\"]}").unwrap();
    match a.cow[0] {
        Cow::Borrowed(ref s) => println!("borrowed: {}", s),
        Cow::Owned(ref s) => println!("copied: {}", s),
    }

    let b = serde_json::from_str::<Sid0>("{\"cow\":[\"\\u0042\"]}").unwrap();
    match b.cow[0] {
        Cow::Borrowed(ref s) => println!("borrowed: {}", s),
        Cow::Owned(ref s) => println!("copied: {}", s),
    }
}

Ah, thanks! That makes sense!
Would it be worth adding a note somewhere to http://serde.rs talking about Cow?

Good call. It is mentioned in https://serde.rs/borrow.html but I filed https://github.com/serde-rs/serde-rs.github.io/issues/57 to follow up with a more in-depth explanation.

Thanks!


Is there a request timeout set method somewhere?

In Async server when i had to defer a request because of a long operation i first set the rxTimeout and pass the request object to a class to process it. I would do the same in here because right now this is not working
esp_err_t HardwareHandler::faultDelete(PsychicRequest *request) {
    if (!request->hasParam("id") || !request->hasParam("address") || !request->hasParam("serial")) {
        return request->reply(400);
    }
    // request->client()->setRxTimeout(30); // Set the timeout of the request to 30 second.
    int address = request->getParam("address")->value().toInt();
    Module *module = hwConfig.getModule(address);
    if (!module) { return request->reply(400); }
    module->faultdelete(request); // Pass the request object to an other class so it can process in the loop.
    return OK;
}

When the module class has finished processing the request it will reply with either 200 or 500.

In fact, none of my deferred requests are working now.

Okay, I was afraid of something like this when you mentioned deferred requests.
As it is right now, I don't think its really feasible to do that with PsychicHttp.  The ESP-IDF http server that its based on, expects the callback to handle the request and send its response entirely within that callback function.  I really don't know what happens if you try to use that request object outside the callback.
That being said, there are a couple possibilities:

It may be that you're not returning the right error code.  I see OK, and not ESP_OK.  If it sees anything other than ESP_OK, it will destroy the session.  That might be what's happening here.
Update your client side code to poll a status page to find out if the operation has completed
Have that page handle all the processing.  Unfortunately this will block the server from processing all responses.

Re: 3, the server is only partially asynchronous.  The whole thing runs in its own thread, but it only processes 1 request at a time in that thread.  However, in ESP-IDF 5.1.x they have added support to the http server so that its possible each request can be processed in its own thread.  Then you could certainly block and wait in a thread and other requests get processed fine.  The only problem is that the Arduino framework uses an older ESP-IDF 4.4.6 which doesn't have this feature.  The next Arduino version is in alpha right now, so hopefully it will be released soon.  Once its released, I would definitely like to add this feature as a truly asynchronous, multithreaded server is definitely the goal.

 I have to rewrite a bunch of my request processing functions then.
ESP_OK and OK is the same thing. Both return 0.
Does the server destroys the socket when the request is replyed or immidiately on return?
If it does not destroy it on return, it should be doable.

Okay I dug through the esp-idf stuff under the hood, and as long as you return ESP_OK it isn't destroying that socket.  So theoretically you should be able to process it outside that call.  There may be something I'm missing though as I'm only passingly familiar with the internals of the esp-idf server.
Could you simulate your call with curl?  curl -i -v -N specifically?  That would be enlightening.
It might be that you need to tell the client to keep the connection alive with the header Connection: keep-alive.  The problem is that esp-idf stuff internally sends some basic headers including content-length when you send a response and the client might just be consuming that and moving on.  I'm a bit up against the limits of my knowledge here, sorry.
I think the best long-term route is probably just going to be implementing a poller.

Strange thing is that it is working sometimes. Not other times. Even with the same request. Curently iam sending back a response using events.

I'm closing all these old issues.  Please re-open it if needed.


Completion handler of firebase remote config activate is getting called only once

RemoteConfig.remoteConfig().activate(completion: { change , error in
                    if let error = error {
                        print("Remote config ERROR ACTIVATE : \(error.localizedDescription) ")
                        listner?.onError(error: error)
                        return;
                    }
                    print("Remote config change : \(change)")
                    listner?.onSuccess(change: change)
                })

The completion handler is getting called only once. Subsequent calls to activate the method is not triggering the completion.
Earlier completion used to get called any number of times
The issue is reproducible in all ios versions with remoteconfig version '7.11.0'
The issue started occurring by around 20th April,4 PM Indian time.

Thanks for reporting, @arshedg. I tried reproducing the issue, but the remoteConfig().activate completion handler was being called multiple times. Could you confirm if you have followed the steps on the docs by calling the remoteConfig().fetch before the remoteConfig().activate completion handler? If so, are you seeing any logs after calling the remoteConfig().fetch?

Yes, we are using the same code from the docs.
The live app is updated months ago and was running fine till today afternoon.
I guess some changes at the remote config backend broke it.
Did you check with the version '7.11.0' ?

Thanks for the info, @arshedg. Yes, I tried using version 7.11.0 and the latest one but I'm unable to reproduce the issue.

  private func fetchRC(listner:RCListners?){
        print("Remote config fetch")
        RemoteConfig.remoteConfig().fetch() { status , error in
            if status == .success {
                RemoteConfig.remoteConfig().activate(completion: { change , error in
                    if let error = error {
                        print("Remote config ERROR ACTIVATE : \(error.localizedDescription) ")
                        listner?.onError(error: error)
                        return;
                    }
                    print("Remote config change : \(change)")
                    listner?.onSuccess(change: change)
                })
            } else {
                if let error = error {
                    print("Remote config ERROR FETCH : \(error.localizedDescription) ")
                    listner?.onError(error: error)
                }
            }
            self.callNext()
        }
    }

This is our complete code. The completion handler of activate is not getting called only once, not on subsequent calls

This issue is occurring due to the overflow of the dispatch queue in the client app.
Closing the ticket.


The library com.google.android.gms:play-services-ads-lite is being requested by various other libraries

Hello, as I integrated react-native-admob, it worked fine in ios but I am getting following error in android.
The library com.google.android.gms:play-services-ads-lite is being requested by various other libraries at [[17.1.2,17.1.2]], but resolves to 12.0.1. Disable the plugin and check your dependencies tree using ./gradlew :app:dependencies.
I checked for gradle version dependencies using command ./gradlew :app:dependencies . Only react-native-activity-recognition was using this ads-lite. I excluded it in activity recogition. But issue is not solved (same error). Please help.
Thanks in advance.

+1

+1


Patch k8 1.23 to Bump runc to 1.1.6

Issue #, if available:
Description of changes: Fixes CVE-2023-27561 and CVE-2023-28642
Cherry-Picked from Upstream following PRs:

https://github.com/kubernetes/kubernetes/pull/108597
https://github.com/kubernetes/kubernetes/pull/109029
https://github.com/kubernetes/kubernetes/pull/117892

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/test kubernetes-1-23-test-presubmit

/approve

/lgtm


Update from upstream

Let me know if I'm wrong but all that's happening in this merge is that we don't update the ruby version to 2.3 instead using our own version and we also maintain a google and LDAP auth version of the setup script.
Is that all?
If so, LGTM :+1:

And beetil too ? :)

I don't remember seeing beetil mentioned in it. Our merge didn't touch our beetil integration code?

This merge doesn't cover Thong's beetil code.
That's all this should be. Thanks Andrew. Merging!


Dependency Updates 03/2020

Coverage remained the same at 97.739% when pulling 985a77e212a26a7a8885a2bff09c82e53b9a1099 on feature/dependency-updates-03-2020 into be7eca6d869b7af9f94928f7211a9e7942047c41 on master.


Project Feedback!

:+1: Nice work, Michelle. It's great to see how far you've come after the first two weeks of the course! This past week we focused a lot on navigation with intents, customizing the App Bar / ToolBar, debugging, and using device SDK's (like camera and maps). We also got more practice sending network requests and passing parameters to the Twitter API. We hope you found this assignment useful and learned a lot while building your own Twitter app!
We put together a detailed Project 3 Feedback Guide here which covers the most common issues with this project. Read through the feedback guide point-by-point to determine how you could improve your submission.
Let us know if you have any other thoughts or questions about this assignment. Next week we'll be extending our Twitter Client to learn how to use tabbed navigation and add extra functionality.

:+1: Nice work Michelle. This week we covered some of the more advanced topics in Android with Fragments and Persistence, spent some time focusing on making polished apps with Material Design, Styles, Themes, and Drawables, and also worked with Parse as a backend for our Chat Client Lab. Fragments in particular is a challenging part of Android so we hope getting practice using Fragments in your Twitter app has helped solidify your knowledge of how they work.
We put together a detailed Project 4 Feedback Guide here which covers the most common issues with this project. Read through the feedback guide point-by-point to determine how you could improve your submission.
We hope you enjoyed the course and learned a lot in the process and look forward to see what you build for your final internship project!


added unpublish status in site listing

What are the relevant tickets?
Fixes https://github.com/mitodl/hq/issues/4858
Description (What does it do?)
This PR aims to add appropriate site status according to its live publish status for the courses in Listing Dashboard.
How can this be tested?

Switch to umar/4858-ocw-studio-course-publication-status-in-course-listing branch in ocw-studio
Create a new course in ocw-studio at http://localhost:8043/sites
Update the necessary details and publish course at live
The status for the course in course listing at http://localhost:8043/sites
The ⋮ menu for the course should not appear until the course publishing is complete
The status should be pending/not-started initially then to publish/failed.

Additional Testing

To test all the scenarios, change the Publish date, Live publish status, and Unpublish status fields in Website details on Django Admin panel

Screenshots:
Some test scenarios and their respective values in DB

Sorry, I'm still thinking about this and I'd like to bring in some UX advice.
To help out the UX team, can you list out all the possible status for:

the site listing page ("Draft," "Published," etc.)
the publish status indicator ("Succeeded","Failed", anything else?)
the publish drawer

Sorry, I'm still thinking about this and I'd like to bring in some UX advice.
To help out the UX team, can you list out all the possible status for:
1. the site listing page ("Draft," "Published," etc.)

2. the publish status indicator ("Succeeded","Failed", anything else?)

3. the publish drawer

With Umar's change here, the possible values on the listing page (called SitesDashboard) are "Published," "Draft" or "Unpublished." In the site right now outside of this PR, it's only "Published" or "Draft" (sites go back to "Draft" when unpublished currently)
The publish status indicator has the following statuses it can display, based on the build status in Concourse:

const publishStatusIndicatorClass = (status: PublishStatus): string => {
  switch (status) {
    case PublishStatus.NotStarted:
      return "bg-secondary"
    case PublishStatus.Pending:
    case PublishStatus.Started:
      return "bg-warning"
    case PublishStatus.Aborted:
    case PublishStatus.Errored:
      return "bg-danger"
    case PublishStatus.Success:
      return "bg-success"
    default:
      return ""
  }
}

The drawer reuses the PublishStatusIndicator component so it displays the same status above

After discussing the issue with Umer, I believe that not having labels for both statuses may still confuse users. For best practices and good UX, it’s important to guide users, and I think labels will help with that. I've proposed a solution to include separate labels for each. Please see the attached image and let me know if this resolves the problem.
In the first screenshot, I proposed the label 'Deployment,' while in the second screenshot, I used 'Site Status.' Umer preferred 'Site Status,' but I would rather avoid using 'Status' twice.

Figma Link

Reading from the beginning, it would say,
'Publish Status - Succeeded'
'Deployment - Failed'

2nd Screenshot
'Publish Status - Succeeded'
'Site Status - Failed'

Looks a bit like a Christmas Tree, or a traffic signal. 🙂
I appreciate the desire for clarity, but sometimes more information leads to increased cognitive load and confusion.

The values for "publish status" seem transient to me, and not of much use on the list view. They are more valuable in the course publisher drawer, where the user is wondering what's happening right now, and is tempted to press the publish button over and over.
Looking at the values in the screenshots, they seem very redundant. Is that just because of the sample you chose?

After discussing it with umer & reading the thread
Carey Comment:

I think we should label and show both, but we should see what Peter thinks

"publish status" vs "deployment status"
if not messaged correctly it could cause more confusion though
Consistent labels on both pages

Peter Comment:

They are more valuable in the course publisher drawer

I think on the listing page, we need to either show both statuses for consistency or not show them at all. This means we should either display both or none. Currently, we are only showing one status, which is the deployment status. Also, the use of multiple colors is usually unavoidable when showing different statuses, but I’m open to any suggestions.

Sorry guys, this still isn't working for me.
First, I think there are two different bits of information to communicate. One is the current state of the course -- is it never published, published or unpublished (to production). Most of the time, this is all the user wants to know. Then there's the state of change of the publication. that could be requested by "not started", "in progress", "failed" or "succeeded". Most of the time this is static.
Second, I think we should be judicious about what information to show. For the list view, the most common use case is to lok through the list and see if a course has been published or not. The state of change is usually irrelevant and only of interest to someone who cares about that specific course. Can we give that less prominence? Maybe put it in a hover state, or a drop-down, or behind some of kind of "updating..." indicator?
I'll discuss this a bit with Jen today to validate my assumptions about values and priority.