Upgrading with react-native-git-upgrade makes no sense to me

Upgrading with react-native-git-upgrade makes no sense to me.
I'm getting lots of conflicts in project.pbxproj which also makes no sense.
I try to solve them but Xcode keeps telling me it can't be opened.
I don't se how this can be a conflict:

There are lines above the seems more similar to the theirs par but that is not treated as a conflict.
Is there some tool or some person that could help me with this or am I down to re-init the whole project?

I had the same problem during my upgrade. project.pbxproj is very touchy, and like you - I thought I knew how to resolve those conflicts and ended up with Xcode not being able to open the project. When you open with Xcode there should be an error with a corresponding stack. (mine was that _referenceProxy was NULL - meaning I had a line that didn't point to any existing entry PBXReferenceProxy section). The whole thing was a mess and I had to roll back to my previous version in git. One thing I will do differently going forward is make a back up copy of project.pbxproj BEFORE resolving conflicts.
I think this new process of using react-native-git-upgrade is not very user friendly...

i had the same issue and then  i resolved this by remove <<<<<< ===== and  >>>>> ...

Ugh, I'm trying to upgrade from  39 to 41, and even though I've not modified the at all since I've still got loads of conflicts in the project.pbxproj file.  It just doesn't work, I think the only answer is to rebuild your project from scratch

What is even a virgin project.pbxproj from RN? I'd just use a stock project.pbxproj from<EMAIL_ADDRESS>and unlink/re-link native modules, instead of trying to resolve a thousand conflicts, but I don't even know which to use as there's multiple project.pbxproj littered around the RN code repository here.
Ugh.

Prior to RN40 (i think) you could get a virgin project file by using react-native upgrade.  I thin kit's gone now though, and I suspect we really need it back.  Merging this file by hand simply isn't possible, at least not for me.  I've got maybe a hundred conflicts in there, and I've barley changed it.  There's just no way to upgrade now.

I use these 2 regexes to replace the conflicted project file, to take out the ours sections and leave only the theirs:
^<<<<<<< ours\n[^>]*=======\n
^>>>>>>> theirs\n

This should, like I suggested, be an option in the new upgrade script. To add "all ours" and "all theirs", besides the current option of leaving all conflicts for in files.

@fungilation @npomfret There is nothing stopping you from using react-native upgrade. The command still exists.

Sure. But this issue is about this being 2 steps forward 1 step back, when
it can be just 2 steps forward.
On Sun, Feb 19, 2017 at 12:11 PM Nicolas Cuillery<EMAIL_ADDRESS>wrote:

@fungilation https://github.com/fungilation @npomfret
https://github.com/npomfret There is nothing stopping you from using react-native
upgrade. The command still exists.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/facebook/react-native/issues/12261#issuecomment-280944891,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ADoJSl6DD95gdOzV9u17Sbny_uEGjxLBks5reKHHgaJpZM4L5q4q
.

--
Cheers,
Gary

I was excited about the new upgrade workflow until I had to use it. xcodeproj files are notorious for being really awkward to merge. I spent hours trying to manually fix about 25 conflicts and every single time I ended up with an unreadable file.
I've been thinking that approaching this issue by merging xcodeproj files is just not going to pan out. I think a better approach would be to programmatically re-construct your xcodeproj.
I assume the majority if not all of the conflicts come from customizing your xcode project by adding frameworks, changing compile targets, signing certificates, etc and then trying to apply the changes that the RN team makes on each release.
So the idea is to apply your changes to the xcodeproj programmatically with something like https://github.com/CocoaPods/Xcodeproj
This way you'd maintain a script that takes the latest xcodeproj unmodified as it comes from RN and then applies a set of deterministic changes to it. It could:

Add custom fonts
Add files
Set your codesign settings
Add targets
Add frameworks
etc.

It could also apply any changes required by RN packages that need xcode project changes.
I haven't had any time to tackle this, but I think it's a promising approach.
The first step would be to write a script that retrieves the corresponding unmodified xcodeproj from RN instead of trying to diff the current one.
Also worth noting that https://github.com/CocoaPods/Xcodeproj has an xcodeproj differ, which may also be useful.
Thoughts? Critique?

This would be the much better approach for xcodeproj alone.
On Sun, Feb 19, 2017 at 10:10 PM thatjuan<EMAIL_ADDRESS>wrote:

I was excited about the new upgrade workflow until I had to use it.
xcodeproj files are notorious for being really awkward to merge. I spent
hours trying to manually fix about 25 conflicts and every single time I
ended up with an unreadable file.
I've been thinking that approaching this issue by merging xcodeproj files
is just not going to pan out. I think a better approach would be to
programmatically re-construct your xcodeproj.
I assume the majority if not all of the conflicts come from customizing
your xcode project by adding frameworks, changing compile targets, signing
certificates, etc and then trying to apply the changes that the RN team
makes on each release.
So the idea is to apply your changes to the xcodeproj programmatically
with something like https://github.com/CocoaPods/Xcodeproj
This way you'd maintain a script that takes the latest xcodeproj
unmodified as it comes from RN and then applies a set of deterministic
changes to it. It could:

Add custom fonts
Add files
Set your codesign settings
Add targets
Add frameworks
etc.

It could also apply any changes required by RN packages that need xcode
project changes.
I haven't had any time to tackle this, but I think it's a promising
approach.
The first step would be to write a script that retrieves the corresponding
unmodified xcodeproj from RN instead of trying to diff the current one.
Also worth noting that https://github.com/CocoaPods/Xcodeproj has an
xcodeproj differ, which may also be useful.
Thoughts? Critique?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/facebook/react-native/issues/12261#issuecomment-280995957,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ADoJSlXsjY_E4puYkP9upeGs_GkJr8BOks5reS5SgaJpZM4L5q4q
.

--
Cheers,
Gary

A programatic way of adding my changes to a virgin Xcode project file would be ideal.

@ncuillery any comments on the above?

@thatjuan I got lucky and merged it right the first time. I agree its a pain. What I did was look for duplicate hashes and merge them by hand. If I didn't see a duplicate then I would just include both. Seemed to work. I really took my time and read through the code though.

I think a better approach would be to programmatically re-construct your xcodeproj.

A programatic way of adding my changes to a virgin Xcode project file would be ideal.

The link command already uses that kind of tool under the hood (this one).
If you want to be able to rewrite all the changes you need in the project.pbxproj programmatically, maybe you could write and maintain your own rnpm plugin to do the job, but IMO I don't think it will be more time-saving and easier than resolving 20 or 30 conflicts in the project.pbxproj. Moreover, I'm not sure that the link command (or any "pbxproj file reader/writer") can handle any change possible in the project.pbxproj file.
In fact, react-native-git-upgrade implements the merge approach, consisting in merging the RN changes into the user current sources whereas you people here seem to use the "override and rewrite" approach by using react-native upgrade as an "eraser". You used to run the upgrade command, answer "Yes" to every files in conflict, and then rewrite all the changes with the link command, am I right ?
react-native-git-upgrade is simply not designed for this usage.
Of course, this approach is the most user-friendly (who likes resolving Git conflicts?), it could work on a simple project. If it's working on your project, go with it. But, like I said, not everything can be handled with 3rd-party librairies and react-native link (adding new a build configuration, assets, ...).
If you don't want to use react-native-git-upgrade at all, you should take a look at Exponent. I've never tried it, but when people complain on the RN community Facebook group, others say "don't bother and use Exponent" so I guess Exponent makes RN upgrades seamless 😄. There is also the create-react-native-app project (coming from the Exponent community, currently in alpha), which aims at a pure JavaScript development.
Let me share some pieces of advice about the merge approach, I hope it would help resolving the conflicts:

Upgrade yours RN versions one by one, even if the tool allows multiple updates at the same time. You'll get smaller conflicts, easier to reason about.
You can use a Git merge tool to resolve your conflicts (a bit tricky, should be improved, but possible)
You should have a basic understanding of the structure of the project.pbxproj file: focus and pay attention on the hashes, there is one for each part of your app, each target, each configuration (see the XCConfigurationList section).
Read the corresponding diff on rn-diff. It's important to know what has changed in order to resolve conflicts.
I explained how I've created this tool at the London React meetup last week, watch the talk to understand how it works (spoiler: there's nothing you can't do with a terminal and Git).

To conclude, I'd say that the proect.pbxproj is a burden we have to carry. This issue should be resumed as "Make a better upgrade documentation".
We could improve the Upgrade guide by adding:

what are we supposed to do with the conflicts delimiters (the current doc assumes that everybody knows what a Git conflict is)
An example where removing the conflicts delimiters makes the project.pbxproj file corrupted (thanks to @dasblitz to have provided one: https://github.com/facebook/react-native/issues/12210#issuecomment-279220737 )
The tips & tricks mentioned above.

Let met bring @mkonicek @grabbou who could have an enlightened opinion about RN upgrades into this conversation.

In fact, react-native-git-upgrade implements the merge approach, consisting in merging the RN changes into the user current sources whereas you people here seem to use the "override and rewrite" approach by using react-native upgrade as an "eraser". You used to run the upgrade command, answer "Yes" to every files in conflict, and then rewrite all the changes with the link command, am I right ?
react-native-git-upgrade is simply not designed for this usage.
Close, but no. I look at diffs per file in the interactive upgrade and choose to keep and merge conflicts, or have it overwritten by new version.

react-native-git-upgrade is an improvement with the 3 way merging. It's just for project.pbxproj it's almost always too many to merge manually. So like I wrote in https://github.com/facebook/react-native/issues/12261#issuecomment-280932462, I regex my way to keeping only "theirs".
My process going forward would be to react-native unlink all native modules first, react-native-git-upgrade, then try merging and resolving project.pbxproj with hopefully minimal conflicts. Then react-native link all the packages again.
This is my process in what I see is the path of least resistance. Give my comment a like if others feel the same. If this is true then I suggest RN add in further automation in resolving conflicts, in consideration of project.pbxproj.

My process going forward would be to react-native unlink all native modules first, react-native-git-upgrade, then try merging and resolving project.pbxproj with hopefully minimal conflicts. Then react-native link all the packages again.

I've never thought about that. Sounds good, I'll definitely test that.

I somehow agree with the OP, however I have never really used git-upgrade
in production. Partially because of aforementioned issues, partially
because they contain sensitive informations and since it's part of our
daily tasks, we upgrade them manually. We've been evaluating at Callstack
different approaches to the upgrade issue and we are slowly working on
releasing an automated tool to address these exact issues.
Just to put an additional context: there was an attempt prior to
git-upgrade to create codemods-like mechanism for upgrading pbxproject. We
wanted to use built-in ability to modify pbxproj to manually apply tweaks
and changes to it (e.g. the initial beta was manually adding missing flags
to build products). It didn't work out as there was too much overheat to
write upgrade paths for every single braking commit and there were just too
many weird combinations of project setup in the wild to handle.
I guess that if you want a smooth upgrade, try create-react-native-app or
exponent. Otherwise, React Native is at the stage where braking changes
can happen and none of the tools will save us from doing fixes manually
(e.g. import paths that changed). The tools we have now may be helpful in
the future, but that's only to happen when the framework itself stabilises.
On Mon, 27 Feb 2017 at 09:31 Nicolas Cuillery<EMAIL_ADDRESS>wrote:

My process going forward would be to react-native unlink all native
modules first, react-native-git-upgrade, then try merging and resolving
project.pbxproj with hopefully minimal conflicts. Then react-native link
all the packages again.
I've never thought about that. Sounds good, I'll definitely test that.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/facebook/react-native/issues/12261#issuecomment-282657217,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ACWcxt-1rrwDUWFcRAxISwWUyBmBVrI6ks5rgonFgaJpZM4L5q4q
.

I ended up downgrading back to the my previous RN version. My xcodeproject works at least for now, only as a temporary solution. It would be really good to see if someone can solve a workaround regarding the merging conflicts.

cc @mkonicek
We're also working on a react-native eject step, which will autogenerate all the native code for your project. This would squash any local configuration you may have, but more and more things will eventually be configurable via the app.json file.

I have the simplest project ever (https://github.com/wachunei/wifiuc-react-native), almost no linked libraries. I've tried to run react-native-git-upgrade, tried replacing ======= with ); where syntax looks like it should go.
But no, I can't do it. It's driving me nuts 😫.
I'd gladly take a PR that resolves project.pbxproj conflicts after running react-native-git-upgrade 🙃

Here's what finally worked for me. I took some suggestions from this thread and finally got my project up from 0.40 to 0.42 (I meant it to be 0.43, but didn't realize 42 is still "latest").
1. Create a new branch (e.g. upgrades/0_40-0_42) (optional)
This is to facilitate the process of undoing steps if needed.
2. Unlink all packages
As suggested by @fungilation, unlinking all packages reduces the number of differences between your project and the master project. In theory, this facilitates the merge.
The easiest way I found to do this was to copy all packages from packages.js (even those that don't need linking, and creating a command list like so:
react-native unlink react-native-randombytes
react-native unlink react-native-router-flux
react-native unlink react-native-vector-icons
react-native unlink react-redux
react-native unlink realm
react-native unlink redux
...

Then just paste them all in the console.
If you created a branch for the upgrade, commit now.
git commit -a -m "unlinked all packages in preparation for upgrade"
4. Run upgrade
react-native-git-upgrade
Follow the upgrade instructions.
5. Merge
This is when you're likely to run into merge conflicts. The output of react-native-git-upgrade will tell you if there were conflicts and on which files. If your pbxproj file was successful, then you're in luck. Else, open your pbxproj file in your text editor and start searching for =====. The best strategy is to try and understand the changes. Try to identify duplicate files in the "ours" and "theirs" fragments and figure out which ones need to stay. Most often you can just keep both fragments, but beware of syntax (more details below).
There are two main issues that are common after merging pbxproj manually. The first is that xcode can no longer open it with an error similar to "...xcodeproj cannot be opened because the project file cannot be parsed". In other words, there's a syntax error in it. The second common issue is xcode crashing right after opening the project. This is technically an xcode bug, as it should never crash, but it generally means something in the file doesn't make sense.
I ran into both of these scenarios during this merge, and I found some tools that helped a lot in resolving them.
** Resolving pbxproj syntax errors **
It's easy to miss adding a closing } for a = { and a ) for a = (. Watch out for these as sometimes the merge process will add a new fragment that requires a new closing parenthesis and just use an existing one, leaving an unclosed fragment in your file.
I used xcodeprojer's --lint option to check my file after merging. If there's an error, it'll give you some information about the error. If it finds unused entries in the xcode proj, it'll output a patch you can apply:
xcodeprojer --lint my_project.xcodeproj > my_project.patch and then patch < my_project.patch
If there are no errors, it won't output.
** Resolving xcode crashes **
What I found the most useful in finding errors was to run xcodeproj show within the ios directory. Look at the beginning of the output of this command to see a list of logical errors in the xcodeproj. In my case, it said something like:
````<PBXReferenceProxy path=libRCTAnimation.a UUID=285C83481E22280B0009EE84>attempted to initialize an object with an unknown UUID.285C83471E22280B0009EE84for attribute:remote_ref`. This can be the result of a merge and  the unknown UUID is being discarded.```
I went in the file and looked for 285C83481E22280B0009EE84. Then I removed blocks referencing it. This solved the xcode crash.
Final thoughts.
This process took about 2.5 hours. Perhaps because I was finding the tools and figuring things out while doing it. It's still not ideal and I don't look forward to the next upgrade.
I am thinking that a combination of a custom ios framework to hold things like assets, fonts, and other customizations that can be easily linked + unlinked, plus the process I described earlier in this thread to programmatically re-construct an xcodeproj for the project from RN's master is still the best solution.
I hope this is helpful for now, though.

If you want to try @thatjuan's technique of unlinking your project before attempting the upgrade, then there's a node script here that will help with the unlinking process.
I tried, and still had loads of conflicts.  I attempted to resolve them by hand but the resulting Xcode project wouldn't compile, it had some sort of low level linking error that I just couldn't figure out.
I ended up copying the virgin Xcode file from a clean AwesomeProject, replaced the name with my project name and then used Xcode to rebuild the whole project from scratch (I made and checked in plenty of notes for next time).  I also noticed that there were changes in the default package.json file that were not picked up by the react-native-git-upgrade processes.  Specifically the version of react had changed and the test dependencies had changed - but none of these changes were added to my package.json file after running react-native-git-upgrade.

If you are still having issues after fixing syntax errors complaining about BundleIdentifier not found, here's what I did to solve it:

Remove the tv-os target in your xcode (select your project in xcode and right click -> delete on the tv-os targets.
Clean build folder through xcode (product -> clean)
Run npm start -- --reset-cache

Now running react-native run-ios should just work ™ 🎉

Note that I did react-native-git-upgrade from RN 0.41 to 0.42. Surprisingly no 3 way merge conflict this time in project.pbxproj. The most conflicts are in Info.plist instead, most of which is simply lines moved out of order. A programmatic rebuild would definitely be much better here that doesn't depend on order of lines.

You guys haven't tried upgrading when using cocoapods, it will take IBM watson to fix pbxproj file.
I am leaning toward cutting the tie with react-native upgrades with ios changes. No more automated xcode changes, try to figure out what changed and if it is really important then manual make the change in xcode.
Just curious if anyone already done that, how is your experience with upgrades? I wish the react-native team releases changes made in xcode proj as instructions.

You can use the following cmd if you want to accept theirs:
cat project.pbxproj | sed '/<<<<<<< ours/,/=======/g' | grep -v '>>>>>>> theirs' | grep -v -e '^$'
(works well if you have react-native unlink before react-native-git-upgrade)

Rn-diff saved me! https://github.com/ncuillery/rn-diff

Apply manually changes for your version using https://github.com/ncuillery/rn-diff/compare/rn-0.41.0...rn-0.42.3
commit
react-native-git-update
resolve file conflict with yours
done

You can alternatively branch out copy xcode all file and then merge it back to your main branch and resolve conflicts with some tools, but then it's step 1 anyway

@npomfret Can confirm that init-ing a new project (with the new upgraded react native locally) kind of worked. at least xcode isn't crashing anymore.  I'm in the process of relinking all of the necessary libraries, but i feel pretty confident about it

I've got to agree with @npomfret and @cwRichardKim. I did everything @thatjuan said to do up to step 4, and the linter gave me the all clear after I fixed every merge conflict and applied the patch it generated. But in the end it still caused xcode to crash every time I tried to open the project. The safest way to do this seems to be just remaking the project from scratch.

@cwRichardKim yes, creating a brand new project from scratch worked.  After linking I had to do a bunch of manual steps, (which I've added to to some documentation now) such as

the version number
the deployment target
some manual linking (such as the CameraRoll module)
the versioning scheme
the provisioning profile management
team setting
launch images
various extra manual steps that are needed for some of my imported projects, for example Crashlytics needs a script adding as a build phase

It sounds like a lot, but now I've got it all noted down I'm confident I can have it all done in about an hour next time.

I wonder about react-native-git-upgrade is never upgrading the packe.json-file, even if the RN-folders in node-modules point to the newest version then, in package.json the old ones remains.

"react-native ugprade" is able to rewrite all files without merging anything, why react-natiev-git-upgrade doesn't have such option?? i have no idea what should i merge in here, android and ios folders are autogenerated anyway..

@holms "Hey! With this tech you can forget about native code... Well, unless you want to update at any time" 🥇

It seems like the pain is about resolving conflict for project.pbxproj then make sure xcode can parse it successfully.
My idea is using a parser (like this one: https://github.com/apache/cordova-node-xcode) to help identify parsing error of project.pbxproj, then we can fix it.
It would be great if xcode can show more informative error instead of just "Project [...] cannot be opened because the project file cannot be parsed."

Parsing project and doing things manually was what I am referring to in
this thread as one of historical solutions. react-native uses that parser
behind the scenes to make link and others work.
On Wed, 26 Apr 2017 at 06:18 Rudy Huynh<EMAIL_ADDRESS>wrote:

It seems like the pain is about resolving conflict for project.pbxproj
then make sure xcode can parse it successfully.
My idea is using a parser (like this one:
https://github.com/apache/cordova-node-xcode) to help identify parsing
error of project.pbxproj, then we can fix it.
It would be great if xcode can show more informative error instead of just
"Project [...] cannot be opened because the project file cannot be parsed."
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/facebook/react-native/issues/12261#issuecomment-297233423,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ACWcxti49YUns-xEIpxpMN15f0ymKwI5ks5rzsWIgaJpZM4L5q4q
.

Hi there! This issue is being closed because it has been inactive for a while. Maybe the issue has been fixed in a recent release, or perhaps it is not affecting a lot of people. Either way, we're automatically closing issues after a period of inactivity. Please do not take it personally!
If you think this issue should definitely remain open, please let us know. The following information is helpful when it comes to determining if the issue should be re-opened:

Does the issue still reproduce on the latest release candidate? Post a comment with the version you tested.
If so, is there any information missing from the bug report? Post a comment with all the information required by the issue template.
Is there a pull request that addresses this issue? Post a comment with the PR number so we can follow up.

If you would like to work on a patch to fix the issue, contributions are very welcome! Read through the contribution guide, and feel free to hop into #react-native if you need help planning your contribution.

Just to add to the conversation, i found out that kin https://github.com/Karumi/Kin works incredibly well to detect errors:
ERROR: line 569:3 missing ';' at 'name'
ERROR: line 570:3 missing ';' at 'path'
ERROR: line 571:3 missing ';' at 'sourceTree'
ERROR: line 572:3 mismatched input 'fileEncoding' expecting ';'
ERROR: line 906:3 mismatched input 'name' expecting 'buildRules'
ERROR: line 909:3 mismatched input 'name' expecting 'dependencies'

Hi, I got same error and this is how I fixed it after 3-4 attempts.

Go to your project/ios/path
right click on .xcodeproj file and select show package contents
Open project.pbxproj with any text editor. (I have used textedit).
make sure you can see the structure with proper indenting. (This will help you to recognize the mistake while editing the file. I reduced a font a bit to see it properly).
Delete >>>>>> ours, ======,  <<<<< theirs
While deleting keep an eye on the structure, You might have to add some closing curly brackets, or some key-value pair code so that the edited value structure looks same as previous or next value.

@fforres Kin worked amazingly for us. If only it could automatically fix those instead of just pointing them out...
I've pretty much added .flowconfig, .gitignore and *.pbxproj to .gitattributes with the option merge=union, then manually fix .pbxproj using Kin.

I tried to update rn from 0.41.2 to 0.50.3, spent couple of days and lots of hours merging all this shit and trying to successfully build my project, but I stepped back and returned to 0.41.2
I faced with react-native-maps building problems (It happens in every f***ing update of react-native), react-native-fbsdk problems, and many other magical building errors with CocoaPods and BatchedBridge (or CxxBridge), Folly, Glog,.... oh my God! I just want to work with my awesome product, and don't want to struggle with frameworks!
But I need this update :( And soon I will try again.

I was able to resolve this conflict first backing up the file with conflict and then carefully resolving each conflict by hand. If my case I kept all the changes ("their" and "ours") but made sure that the }; were all correctly closed.
In some of cases I had to copy complete closures by copying line from earlier closures. For example:
<<<<<<< ours
		16325337ED944F57BE6F0B30 /* Frameworks */ = {
			isa = PBXGroup;
			children = (
				1222EEC0523740BDB4F97BFD /* CoreData.framework */,
				7D736096AB2B4626B7046D95 /* SystemConfiguration.framework */,
				B5E4D59920D7468E8D64C97D /* libz.tbd */,
				457A9EAE7B3B45C98AEDD311 /* libsqlite3.0.tbd */,
				61C2E7A3F9CC32901DB622B8 /* libPods-PAndDAppAuth.a */,
				5C7DC1068AE3E4F5204F5DBF /* libPods-PAndDAppAuth-tvOSTests.a */,
				77175699C0CB35B38A47AEB8 /* libPods-PAndDAppAuthTests.a */,
=======
		2D16E6871FA4F8E400B85C8A /* Frameworks */ = {
			isa = PBXGroup;
			children = (
				2D16E6891FA4F8E400B85C8A /* libReact.a */,
>>>>>>> theirs
			);
			name = Frameworks;
			sourceTree = "<group>";
		};

became
		16325337ED944F57BE6F0B30 /* Frameworks */ = {
			isa = PBXGroup;
			children = (
				1222EEC0523740BDB4F97BFD /* CoreData.framework */,
				7D736096AB2B4626B7046D95 /* SystemConfiguration.framework */,
				B5E4D59920D7468E8D64C97D /* libz.tbd */,
				457A9EAE7B3B45C98AEDD311 /* libsqlite3.0.tbd */,
				61C2E7A3F9CC32901DB622B8 /* libPods-PAndDAppAuth.a */,
				5C7DC1068AE3E4F5204F5DBF /* libPods-PAndDAppAuth-tvOSTests.a */,
				77175699C0CB35B38A47AEB8 /* libPods-PAndDAppAuthTests.a */,
                        );
			name = Frameworks;
			sourceTree = "<group>";
		};

		2D16E6871FA4F8E400B85C8A /* Frameworks */ = {
			isa = PBXGroup;
			children = (
				2D16E6891FA4F8E400B85C8A /* libReact.a */,
			);
			name = Frameworks;
			sourceTree = "<group>";
		};

Complexity of upgrade is still a major issue. I can understand that it is not top priority but this issue shall stay open and believe some of the advices here shall find their way to the official guide.

Kin: https://github.com/Karumi/Kin Solved the problem for me. Just blindly added and removed lines as suggested by KIN.

I think that if this issue doesn't get solved and/or mitigated in some way the React Native upgrade process is so frustrating that developers should think twice to use this platform in the next project. At leas this is the case for me, I've already spent a few hours trying to merge conflicts in project.bkxproj and I haven't got anything close to working yet. So frustrating!
Trying to upgrade from RN 0.50.1 to RN 0.55.3.

Works fine for me. Upgrade 1 minor version at a time with react-native-git-upgrade <version> (ex. 0.50 -> 0.51, etc.)


Reduce errors from manifest signature validation

Motivation:
Manifest signature validation works similarly as source archive signature validation, meaning user could see duplicate errors (e.g., source archive not signed).
Modifications:

Change most error throwing to logging diagnostics for manifest signature validation
Continue to prompt if that's what user has configured for unsigned packages or untrusted signers; cache responses in memory to prevent repeatedly prompting for manifest and source archive downloads for the same package version.
Wire up publisher TOFU for manifest signing
Adjust tests

@swift-ci please smoke test

In case of an error during manifest signature validation, I would expect archive validation to not even happen because we wouldn't know which archive to even download. Am I missing something?

@swift-ci please smoke test

@swift-ci please smoke test

@swift-ci please test Windows platform

windows CI has been unstable all day. okay to merge without.

@swift-ci please test Windows platform


test: Remove binary manifest list avro file

Close #70
We generate manifest list avro file on the fly.

Thanks again @liurenjie1024 for working on this. @Xuanwo and @ZENOTME thanks for the review 👍


Array type

@bradzacher i falled into small issue while doing this rule.
everything is working fine except autofix, eslint is working correctly when i change begin and end of node at same time (its not fixing childs)
type foo = Array<Array<Bar>>

autofix is going to be applied only to first Array not to both

^ why?
eslint while applying auto fix resolves it for specific range, [number, number] but if you provide array of fixers it's going to compute results from all of them and fill gaps from source code.

https://github.com/eslint/eslint/issues/11187


Set version pin to latest version

Version is currently pinned to 2.2.17-1. This fails on the installation task on 14.04 and 16.04. Updating to 2.2.19-1 resolves the issue.
@jwitko @esacteksab

:+1:


Training is not using GPU

Why is this happening? Training is too slow on CPU:0...
How can I set gpu:0 ?

Close for now due to no further activity.


Clashing in defaultState attribute naming with ConstraintLayout 2.0

ConstraintLayout 2.0 is used in combination with MotionLayout which has StateSet property which is defined like this:
<declare-styleable name="StateSet"><attr format="reference" name="defaultState"/></declare-styleable>
You should rename your CustomBottomSheetBehavior attribute defaultState to something else, otherwise the lib will not build with ConstraintLayout 2.0.
Thanks in advance.

I have the same issue - really need a fix for this!

I have the same issue - really need a fix for this!

I have the same issue - really need a fix for this too!！


Dynamically create object reconcilers for new types.

This PR creates object reconciler(s) when new type(s) are added to the
HNCConfiguration and informs the hierarchy reconciler about the new
object reconciler(s).
Specifically, it does the following tasks:

Dynamically creates an object reconciler when a new type is added
in HNCConfiguration.
Informs the hierarchy reconciler about the newly added object
reconciler so the corresponding objects can be propagated correctly
when the hierarchy structure changes.

Test: Verified on a GKE cluster that

When adding a new type in HNCConfiguration, corresponding object
reconciler is created successfully.
When adding a new object of the same type to a node in the namespace
tree, the object is propagated correctly to the descendants of the
node.
When the tree structure changes (e.g., add another descendant to the
node above), the new object of the same type is propagated
correctly.

Design doc: http://bit.ly/hnc-type-configuration
Issue: #411

/assign @rjbez17
Note that this change will also stop syncing everything except Roles and RoleBindings by default.

/ok-to-test

The test should be fixed by now. Feel free to take a look.

This lgtm, @adrianludwin  and @yiqigao217  are you satisfied with the updates from you last few comments? Feel free to remove hold when happy.
/assign @adrianludwin
/assign @yiqigao217
/lgtm
/approve
/hold

Thanks Ryan! Just one minor nit left then I'll remove the hold.


Update DiplomatView.coffee

I will assist in Traditional Chinese translation

Hello, @shuwn! Thank you for contributing. Can you sign our CLA so that I can merge your pull request?


How do I provide the tree structure for sap.m.Tree?

This isn't really an issue, more of a request for help.
Maybe discussions should be activated for this repo?
I've done this before with OData, but I'm unsure how to do this with abap2ui5.
I've added sap.m.Tree and sap.m.StandardTreeItem with commit https://github.com/WegnerDan/abap2UI5/commit/f8997b52ae6bdae290036ccda46a3af1eebd92a0
I've not sent a pull request yet.
This is how far I've gotten:

    DATA(popup) = z2ui5_cl_xml_view=>factory_popup( client ).

    DATA(dialog) = popup->dialog( title         = f4help-title
                                  contentheight = '50%'
                                  contentwidth  = '50%' ).
    dialog->tree(
            mode  = 'SingleSelectMaster'
            items = client->_bind_edit( f4help-values )
        )->items(
            )->standard_tree_item( selected = '{IS_SELECTED}'
            title = '{VALUE}'
    ).

    dialog->buttons(
    )->button( text  = 'Abbrechen'(009)
               icon  = `sap-icon://decline`
               type  = `Reject`
               press = client->_event( c_event-f4help_cancel )
    ).

    client->popup_display( popup->stringify( ) ).

As I understand it, I need the editable binding to be able to find out which tree item is selected, right?
Or is there a way to do this with _bind?
With _bind there is no runtime error, as you've said.
I will look into the mentioned source code spots.

Yes when you want to transport the selected property then you have to use  bind_edit.
If possible maybe you can also provide a version of your app without database usage? I can use this then as an example for testing making it easier to figure out how to solve this.

Nice work! Looks good to me! Pretty printer is no problem, feel free to send a PR.
Can I use the version without db for the demo repository?

Can I use the version without db for the demo repository?

Yep, feel free!


Add basic versioning into main golang file

I feel the MQ version is important as we would only see the MQ version in the error logs if MQ started and using the commit hash wouldn't be enough as a customer could use the same git commit to build 9.0.4, 9.0.5 etc of MQ and we'd have no way of seeing in the log what version of MQ they are on.
I have modified the variable names to remove BUILD and GIT and make them more generic and referring to Image instead.


changelog entries for unrestricted unions/scope value params

see https://github.com/dlang/dmd/pull/5897
see https://github.com/dlang/dmd/pull/5830

Ping, needed for 2.072.

Will have to merge this w/ a few more changelog edits.


dcraw not working

The dcraw executable is dependent on the jasper library which does not exist.
The jasper-dev package is not available in alpine 3.11 - you'd need to revert to 3.10 where it is available

fixed in docker latest tag
(manually builded jasper on alpine 3.12)


Check for slot content in AppRail

Description
Check for lead and trail slots content in AppRail before inserting html code.

This doesn't look bad, but it should definitely include a change set.

The PR is targeting the master branch and the branch name doesn't follow Skeleton's style guide.
please reffer to https://www.skeleton.dev/docs/contributing

@ibilux if you need us to change the target branch we can, you should always target dev please. But a changeset will be required here. Our changelog is programmatic, generated from that. Make sure to read the PR message rather than replace it, it covers this and other requirements. See another PR if you need instruction for this.

The PR is targeting the master branch and the branch name doesn't follow Skeleton's style guide. please refer to https://www.skeleton.dev/docs/contributing

I didn't notice i was on the master branch, should I close it and make a new one in the dev branch.

@ibilux if you need us to change the target branch we can, you should always target dev please. But a changeset will be required here. Our changelog is programmatic, generated from that. Make sure to read the PR message rather than replace it, it covers this and other requirements. See another PR if you need instruction for this.

I think the cBase class should be updated too ?
const cBase = `grid grid-rows-[${[$$slots.lead?'auto':undefined,'1fr',$$slots.trail?'auto':undefined].filter(Boolean).join('_')}] overflow-y-auto`;

@ibilux I'd recommend reading through out style guide in the contributor section here:
https://www.skeleton.dev/docs/contributing/style-guide
We don't set dynamic values in the cBase. Create a reactive property to handle this.

@ibilux @Sarenor @Mahmoud-zino I was in process on switching the target branch and appending a changeset. However, after reviewing the change to the grid styling, I'm thinking this may not be a useful change. Having empty slots causes no harm, and would make adjusting the grid-rows-x styling VERY difficult to adjust per all possible configurations. The simplest solution is sometimes the best, so I think we're close this out and keep things as is.


getWebSocketsToken() throwing/rejecting with Error: ["EAPI:Invalid nonce"]

Awesome strongly typed lib, Justin... thanks for this.  :) Getting this Error when calling getWebSocketsToken() (line 10 in the image).  Had been seeing the same with some other REST calls I'd tried as well. My work around has been to use https://www.npmjs.com/package/kraken-api ) to get the token (and other REST calls) and then provide that token to node-kraken-api private websocket connection. Privates work like a champ after that!
Is there something I'm missing that I need to do? Nonce window for my Kraken API keys is set to 0. Tips?
(node:16640) UnhandledPromiseRejectionWarning: Error: ["EAPI:Invalid nonce"]     at _UTF8Receiver.finalize (E:\slab\dev\kraken-ws-rt-work\node_modules\node-kraken-api\index.js:915:31)     at IncomingMessage.<anonymous> (E:\slab\dev\kraken-ws-rt-work\node_modules\node-kraken-api\index.js:1081:29

)

Hey thanks Robert, no problem! Sorry to hear that you're having nonce issues.
I opted to use plain millisecond time for the nonce generation, as seen here:
export const _GENNONCE = (() => {
  let prev = -1;
  let next = -1;
  return Object.freeze(() => {
    next = Date.now();
    if (next <= prev) next = prev + 1;
    prev = next;
    return next;
  });
})();

kraken-api, on the other hand, uses a spoofed microsecond time:
params.nonce = new Date() * 1000; // spoof microsecond
Since each API key nonce must always increase, using kraken-api and my client with the same key will lead to this problem.
This can be solved by constructing your instance with a custom nonce generator (it is set to _GENNONCE by default):
const krakenWsP = new Kraken({key:defaultKey2, secret: defaultSecret2, gennonce: () => Date.now() * 1000});
Another thing to keep in mind is that the client allows for simultaneous REST requests, so if you plan on making more requests and you don't want to wait for each call to resolve before sending the next, increase your nonce window.
Thanks for bringing this up! I've added a note to the README for the next version :).


[F] Is there any support for decrypting excel with password and exporting encrypted excel? Like the xlsx-populate one?

🚀 Feature Proposal
Is there any support for decrypting excel with password and exporting encrypted excel? Like the xlsx-populate one?
Motivation
Some scenarios require dealing with encrypted and decrypted excel
Example
Just like
xlsx-populate  decrypted：

XlsxPopulate.fromFileAsync("./Book1.xlsx", { password: "S3cret!" })
    .then(workbook => {
        // ...
    });

xlsx-populate  encrypted：
workbook.toFileAsync("./out.xlsx", { password: "S3cret!" });

This library, @zurmokeeper/exceljs, has implemented the encryption and decryption of excel files


Create new article on Input Validation

Structure of the article:

Description
Scenario
Analysis
Impact
Mitigation
Best Practices
References

Hi @sourcecodereviewer , like Grahame, I love your approach. I'm proposing a significant rewrite. For that purpose, I've set up a different PR, #154 . Can you look at that and tell us what you think?

Sure @mjang-cobalt. Thanks.

Closing as this is replaced by https://github.com/cobalthq/cobalt-product-public-docs/pull/154


how to test in HRSC2016

updated by https://github.com/csuhan/ReDet/commit/b998f8a4b79ce2173218fdee833168ab1b42bc32


Linux support

Hello,
You've done a glorious software that kills MathCAD. Thank you very much.
Currently, instead of MathCAD, I use Jupyter+Octave for engineering calculations.
The open-source nature of the software is essential for me.
I'm considering switching to Calcpad. I very much like your online IDE. But one day the website might be down.
For this reason, I would like to ask you to provide installation instructions for Linux if possible.
Overall, do you plan to support Linux?

Hello @Plinsboorg.
Calcpad for desktop uses WPF, so it is not natively supported on Linux. You can try with Wine. We are considering to provide Linux support, but we need to get rid of WPF first. Probably Avalonia UI or Uno Platform are the best alternatives. As soon as I have some more time, I will try.

Hi,
Now, Calcpad is one step further to getting multiplatform.
I replaced the System.Drawing.Common library, which is built on top of GDI+ with SkiaSharp, which is multiplatform.
GDI+ is Windows specific technology and can run only on Windows. SkiaSharp can run on Windows, MacOS, Linux, iOS and Android.
Theoretically, nothing in the source code stops you from compiling and using Calcpad on Linux, without GUI for now, but with some text editor like Sublime or Notepad++ and browser. What you need to do is the following:

Compile the Calcpad.Cli project on Linux with Rider or some other dev IDE.
Add the Calcpad syntax to Sublime.
Setup the calcpad.sublime-build to convert the current file by using the command:
cli $file output.html
Make it to open in the browser or to refresh the browser if already opened after that.

I am not a Linux user, but if someone with Linux is willing to try, I can help what I can. If anyone manages to run it or make a Linux distro, please share.
To migrate the GUI requires some more work, because we need to get rid of WPF, which runs only on Windows, and replace it with something multiplatform like Avalonia.

Nice, good to see progress on this. It seems to work great so far on Ubuntu 23.04 when running as cli. Looking forward to more progress!
Trying to export a simple cpd file to html seems to fail, however:
$ calcpad test.cpd test.html
/usr/local/bin/calcpad: line 1: #!/bin/sh: No such file or directory
An error occurred trying to start process 'test.html' with working directory '/home/Grefron/calcpad'. No such file or directory
Press any key to continue.

Hi, thank you for your feedback.
Please, try specifying the full paths. Check if spelling is correct, including small/capital letters.
If it works with the full path, probably Cli cannot resolve correctly the working directory on Linux, when only file names are specified. @kaloyansarafov, can you please check this on your Linux.

Just tried the latest Linux version and it works well now, thanks a lot!

Hi!
Thank you!
All credits for the Linux version goes to to @kaloyansarafov, a talented young computer software student who made it work. I am not much of a Linux user myself. :)

Please help
$ sudo dpkg -i -D1 Calcpad.6.2.0.deb
D000001: ensure_diversions: new, (re)loading
D000001: ensure_statoverrides: new, (re)loading
(Reading database ... 325526 files and directories currently installed.)
Preparing to unpack Calcpad.6.2.0.deb ...
D000001: process_archive oldversionstatus=broken due to postinst failure
Unpacking calcpad (6.2.0) over (6.2.0) ...
D000001: process_archive updating info directory
D000001: generating infodb hashfile
D000001: process queue pkg calcpad:all queue.len 0 progress 1, try 1
Setting up calcpad (6.2.0) ...
D000001: deferred_configure updating conffiles
: not foundkg/info/calcpad.postinst: 2:
/var/lib/dpkg/info/calcpad.postinst: 4: Syntax error: "&&" unexpected
dpkg: error processing package calcpad (--install):
installed calcpad package post-installation script subprocess returned error exit status 2
D000001: ensure_diversions: same, skipping
Errors were encountered while processing:
calcpad

Hi!
I am sorry, if found that there was a problem in the latest install packages. Now I fixed it. You can download again and reinstall.
sudo apt-get remove --purge calcpad
sudo apt-get install -y /Calcpad.6.2.0.deb

Installed now, thank you

Ubuntu 22.04 doens't have dotnet-runtime-8.0 in repository
So should I wait for upgrade to 24.04?

Hi! In this case, you can download it from the Microsoft package repository. Here are detailed instructions how to install .NET 8.0 on Ubuntu:
https://learn.microsoft.com/en-us/dotnet/core/install/linux-ubuntu


pip-compile only primary requirements defined in requirements.in

What's the problem this feature will solve?

We have a requirement where our project only really needs to pin the primary requirements defined in the requirements. in file. And right now, there is no way to do this explicitly. So we have to generate the requirements.txt file and strip out all non-primary dependencies, which is quite hacky.
Describe the solution you'd like

pip-compile --primary-requirements-only --output-file requirements.txt --upgrade requirements.in.

Alternative Solutions

None available today in pip-compile. But maybe use pip.
Additional context

None

Hello @cabhishek,
Thanks for the issue! IMO, this case is too specific and could be solved by:
$ pip-compile -qo- | grep "via -r requirements.in"

But, I'd be happy to hear other opinions.

@atugushev Thanks for the suggestion, and we are doing something similar. But I guess our use case is specific since we don't even need the annotations  # "via -r requirements.in...". So we cannot use --no-annotate flag if we are relying on annotation for primary dependency filtering.
But overall I think its quite a simple use case, just pin dependencies from requirement.in but not recursively.

A few extra notes:

You can add a comment-stripping step in the pipeline to @atugushev's example:

$ pip-compile -qUo- requirements.in | grep "via -r requirements.in" | grep -o '.*  ' > requirements.txt

You can do it with one fewer pipe with a fancy tool like pcregrep, pcre2grep, or rg (ripgrep):

$ pip-compile -qUo- requirements.in | pcregrep -o1 '(.*) # via -r requirements.in' > requirements.txt
$ pip-compile -qUo- requirements.in | pcre2grep -o1 '(.*) # via -r requirements.in' > requirements.txt
$ pip-compile -qUo- requirements.in | rg -r '$1' '(.*) # via -r requirements.in' > requirements.txt

Be warned that in this project's current state, running pip-sync without options against such a resulting requirements.txt will behave inconsistently. Let's say we've got two primary requirements, click and boto3:

$ pip-sync -q requirements.txt
$ pip freeze | wc -l
10
$ pip-sync -q requirements.txt
$ pip freeze | wc -l
4
$ pip-sync -q requirements.txt
$ pip freeze | wc -l
4
$ pip-sync -q /dev/null
$ pip-sync -q requirements.txt
$ pip freeze | wc -l
10

You can consistently install only the primary requirements without any of their dependencies (a broken installation), with:
$ pip-sync --pip-args --no-deps requirements.txt

But I doubt that's what you want. I would be very interested to hear if it is what you want; I have a PR to, IMO, fix the above inconsistency by always installing those unpinned dependencies, but it's been met with concerns about breaking workflows, though no one has yet provided an actual workflow which would be broken by it. For details, see #907 and #896.

Looks like the new annotation format that puts them on separate lines breaks these workarounds. You can instead get the explicit reqs by either parsing the reqsin files or fancier parsing of the annotated txts.
I'll try to post such a workaround soon.

Looks like the new annotation format that puts them on separate lines breaks these workarounds. You can instead get the explicit reqs by either parsing the reqsin files or fancier parsing of the annotated txts.
I'll try to post such a workaround soon.

@AndydeCleyre Thanks, and yes, this change breaks our build pipeline. Our unit test caught this change, and now regex parsing is harder. TBH, I don't understand the value add of the new annotation format.

@AndydeCleyre Thanks, and yes, this change breaks our build pipeline. Our unit test caught this change, and now regex parsing is harder. TBH, I don't understand the value add of the new annotation format.

@cabhishek
While I hope and believe we'll get the compact annotations back soon, I have written a new workaround that doesn't parse the annotation strings, as a zsh function:
#!/bin/zsh
.pcpicky_pkgspec2name () {  # <pkgspec>
  emulate -L zsh
  unset REPLY
  [[ $1 ]] || return

  REPLY=${${(j: :)${${(s: :)${1##*\#egg=}:l}:#-*}}%%[ \[<>=#~;@&]*}
}

pcpicky () {  # [<reqs.in>]
  emulate -L zsh

  local reqsin pipc_args=()
  reqsin=${1:-requirements.in}

  local targets=()
  for 1 ( ${(f)"$(<$reqsin)"} ) {
    .pcpicky_pkgspec2name $1
    targets+=($REPLY)
  }

  local pins=()
  for 1 ( ${(f)"$(pip-compile -qUo- $reqsin)"} ) {
    .pcpicky_pkgspec2name $1
    if (( targets[(I)$REPLY] )) pins+=($1)
  }

  <<<${(F)pins} >${reqsin:r}.txt
}

pcpicky $@

@cabhishek
While I hope and believe we'll get the compact annotations back soon, I have written a new workaround that doesn't parse the annotation strings, as a zsh function:
#!/bin/zsh
.pcpicky_pkgspec2name () {  # <pkgspec>
  emulate -L zsh
  unset REPLY
  [[ $1 ]] || return

  REPLY=${${(j: :)${${(s: :)${1##*\#egg=}:l}:#-*}}%%[ \[<>=#~;@&]*}
}

pcpicky () {  # [<reqs.in>]
  emulate -L zsh

  local reqsin pipc_args=()
  reqsin=${1:-requirements.in}

  local targets=()
  for 1 ( ${(f)"$(<$reqsin)"} ) {
    .pcpicky_pkgspec2name $1
    targets+=($REPLY)
  }

  local pins=()
  for 1 ( ${(f)"$(pip-compile -qUo- $reqsin)"} ) {
    .pcpicky_pkgspec2name $1
    if (( targets[(I)$REPLY] )) pins+=($1)
  }

  <<<${(F)pins} >${reqsin:r}.txt
}

pcpicky $@

Just noting here that --annotation-style=line can help with parsing, in newer versions.

--annotation-style=line works as expected and creates comments on the same line as the requirements.  Thanks.


Relabel data

if i use our data,do not use ImageNet data,so,how do we get Relabel data?

@123wk45678
The code for computing the prediction map is not provided yet and we may update it later.
Getting ReLabel data for your own data is not that hard. You can use a pre-trained strong classifier (e.g., EfficientNet-L2) and get the prediction map by removing the global average pooling layer as described in our paper's appendix.

@123wk45678
The code for computing the prediction map is not provided yet and we may update it later.
Getting ReLabel data for your own data is not that hard. You can use a pre-trained strong classifier (e.g., EfficientNet-L2) and get the prediction map by removing the global average pooling layer as described in our paper's appendix.

ok,thank you ,expect this to open sorce your code ,author

ok,thank you ,expect this to open sorce your code ,author

ok,thank you ,expect this to open source your code ,author

ok,thank you ,expect this to open source your code ,author

A bit confusing here.As described in paper,remove the global average pooling layer and add conv1x1 layer, do we need to fine-tuning this conv1x1 layer for getting label map?

A bit confusing here.As described in paper,remove the global average pooling layer and add conv1x1 layer, do we need to fine-tuning this conv1x1 layer for getting label map?

@changewOw
Indeed, the 1x1conv layer is exactly the same as the final fully-connected layer.
The size of the fully-connected layer's weight matrix [d x C] (d=channel size, C=number of classes),
and we reshape it to [1 x 1 x d x C] to be the kernel matrix of 1x1conv.
We present the detailed descriptions in Appendix A of our paper.

@changewOw
Indeed, the 1x1conv layer is exactly the same as the final fully-connected layer.
The size of the fully-connected layer's weight matrix [d x C] (d=channel size, C=number of classes),
and we reshape it to [1 x 1 x d x C] to be the kernel matrix of 1x1conv.
We present the detailed descriptions in Appendix A of our paper.

Got it! Thank you very much

Got it! Thank you very much

@changewOw You're welcome :)

@changewOw You're welcome :)


Conditional ability to perform full serialization while adding messages to journal

Sometimes it is not enough just to check for existance of message serializator. During tests it is good to understand that complex messages can be succesfully serialized into memory journal.
This PR tries to achieve that.
Please note that code style maybe ugly since I'm quite new to Scala. So I'm open for any suggestions / imrpovements.

Thanks for your contribution! I changed it a little bit because the plugin did not handle atomic writes; but your use case must make it compatible with atomic writes.


bug related to read/write lock in server

Describe the bug
When running cpp version of players' code, the server might break down soon after the game starts. The timing of this seems to be in a random manner, sometimes not happening at all. As we're currently rewriting the entire .cpp file, we do not rule out multiple bugs in our own AI.cpp, but the info printed seems to point to a bug in Server. To ensure reproduction, please operate sevaral times.
To Reproduce
Steps to reproduce the behavior:

Open RunServer.cmd
Open RunCpp.cmd
Happens with or without opening RunGUIClient.cmd

Expected behavior
The server should print nothing during the course of the game ,except for new spectators.
Screenshots

and meanwhile in GUI:

Additional context
I do not know whether this is related (perhaps we wrote erroneous commands in RunGUIClient.cmd), but the graphic interface refuse to open correctly if it is opened after RunCpp.cmd. The error feedback is as follows:

However, it will run correctly if opened after RunServer.cmd and before RunCpp.cmd. This does not interfere with actual programming ,but can be a little annoying.

I just learned that the first one will be solved in a new PR(issue already closed), but it did not seem to have anything to do with the second.
Additional info: I do not know whether this will be helpful : twice I observed the breakdown after a Student is hit.

@shangfengh 看一看怎么回事

gh pr checkout 545 在这个pr中第二个问题已被解决。


fix generation of sample image non square number of images

settings batch_size to non square numbers can break the generation of sample images, because
e.g.
w=floor(sqrt(32))=5, h=ceil(sqrt(32))=6 but 5*6 = 30 < 32, so the image generator tries to write beyond the end of the image array. This PR fixes this by calculating the second dimension as w=ceil(sqrt(size)/h)

Looks good! Thanks for the PR.


Feature/rerun validation issue

What this PR does:
Rethrows exceptions in DiffData (Validation job) so that partition-ranges with exceptions can be rerun similar to Migrate job.
Which issue(s) this PR fixes:
Fixes #148
Checklist:

[ ] Automated Tests added/updated
[ ] Documentation added/updated
[x] CLA Signed:  DataStax CLA

@pravinbhat should we close this PR as we've this already taken care of with PR #152 here?


Gallery-slider component uses file path as alt-text

The Gallery-slider component uses the path of the file as alt-text. This is probably worse than having no alt-text at all for people using a screenreader. Using the filename itself would be slightly better (which is probably the intention of the component). It is also probably a good idea to think about a better way, like using the comment field in the EXIF data as alt-text.

Hey @TeaDrinkingProgrammer, thanks for your concern, I have updated the module. now it's use only the file name.


External TLS on single node install (with AWS load balancer and ACM certs)

What kind of request is this (question/bug/enhancement/feature request):
question
Steps to reproduce (least amount of steps as possible):

Install Rancher as single node following instructions
Configure node to open port 80 and 443 for ingress
Request certificate through ACM
Configure L7 load balancer (AWS ALB) to use certificate and to redirect to the node
Attempt to do requests through the CLI through rancher kubectl <something>

Result:
Errors:
Unable to connect to the server: x509: certificate signed by unknown authority
To work around, I can provide --insecure-skip-tls-verify=true, but it's cumbersome.
Other details that may be helpful:
The interface (and everything else that I can see) works fine.
I saw that the HA install allows for configuring --set tls=external. My question is if there's an equivalent for single node install? I couldn't find it.
Environment information

Rancher version (rancher/rancher/rancher/server image tag or shown bottom left in the UI): v2.3.2
Installation option (single install/HA): single install

The instructions to run Rancher single node install with an external load balancer are described at https://rancher.com/docs/rancher/v2.x/en/installation/single-node/single-node-install-external-lb/. Please supply what kind of certificate you are using and what exact command to run Rancher.

The certificate is provided by Amazon's certificate service, which does not allow exporting the keys. So basically I have no certificate for Rancher as it's not really relevant.
I found here: https://rancher.com/docs/rancher/v2.x/en/installation/ha/helm-rancher/chart-options/#external-tls-termination, that Rancher HA could be configured to work with such a config. But single node indeed only gives options given that you provide the certificate.

The docs say that if you use a certificate signed by a recognized CA, you have to start the container like this:
docker run -d --restart=unless-stopped \
-p 80:80 -p 443:443 \
rancher/rancher:latest --no-cacerts

Please supply what command you used to run the container.

I executed this:
docker run -d \
    --name=rancher \
    --restart=unless-stopped \
    -p 80:80 \
    -p 443:443 \
    rancher/rancher:stable

So I did not add the --no-cacerts. Would restarting with the new option be OK?
Also, the docs state The certificate files must be in PEM format.. I don't see them being used anywhere however. Any idea why that is?

Not sure if you see that in FAQ and troubleshooting, but there are more sections on that page regarding the use of an external load balancer. If you relaunch, you need to provide the flag to reuse the volume if you want to keep your state. Then generate a kubeconfig that will not contain the cacert so the connection will be valid.


[libunifex]: disable build tests and examples

[X] Changes comply with the maintainer guide
[X] SHA512s are updated for each updated download
[ ] ~The "supports" clause reflects platforms that may be fixed by this new version~
[ ] ~Any fixed CI baseline entries are removed from that file.~
[ ] ~Any patches that are no longer applied are deleted from the port's directory.~
[X] The version database is fixed by rerunning ./vcpkg x-add-version --all and committing the result.
[X] Only one version is added to each modified port's versions file.

Sorry for the wrong label. :)

Note: I will be converting your PR to draft status. When you respond, please revert to "ready for review".
That way, I can be aware that you've responded since you can't modify the tags.

I mainly want to fix gtest dependency. Now BUILD_TESTS is no longer feature any more.

If just disable TEST, I think it is acceptable.

Can you elaborate on what you are trying to fix? I believe upstream still has testing support.

before change, if enable test feature, https://github.com/facebookexperimental/libunifex/blob/e3e8fc0f3b310b2abe4ea8eda59d0ff0ecf197c0/cmake/gtest.cmake#L6 # Download and unpack googletest at configure time , this port will download google test itself other than use vcpkg's test.


Linting for rviz_rendering

This pull request adds liniting to rviz_rendering and fixes all linting issues to have a clean build.
Closes #1

I updated the pull request making all requested changes (to simplify things, I force-pushed):

we don't use ament_copyright now and all copyright changes were discarded
the cppcheck error for the memory leak in ogre_logging and the cpplint errors for static std::strings are only ignored (no changes)

One additional comment: It would be nicer to still use ament_lint_auto with custom linting tools as specified in https://github.com/ament/ament_lint/blob/master/ament_lint_auto/doc/index.rst - but this didn't work for me, so I had to include the linters manually in CMake.

One additional comment: It would be nicer to still use ament_lint_auto with custom linting tools as specified in https://github.com/ament/ament_lint/blob/master/ament_lint_auto/doc/index.rst - but this didn't work for me, so I had to include the linters manually in CMake.

Interesting, perhaps it's worth opening an issue on the ament_lint_auto package's repository. This will work fine for now.

I don't know if it helps but you can bypass a specific linter by tricking cmake into not finding it and keep using ament_lint_auto for everything else (example to disable only the copyright linter here)


Decimal Values with too-high precision are multiplied by 100

This works as expected:
>>> pyarrow.array([decimal.Decimal('1.23')], pyarrow.decimal128(10,2))[0]
Decimal('1.23')

Storing an extra digit of precision multiplies the stored value by a factor of 100:
>>> pyarrow.array([decimal.Decimal('1.234')], pyarrow.decimal128(10,2))[0]
Decimal('123.40')

Ideally I would get an exception since the value I'm trying to store doesn't fit in the declared type of the array.  It would be less good, but still ok, if the stored value were 1.23 (truncating the extra digit).  I didn't expect pyarrow to silently store a value that differs from the original value by a factor of 100.
I originally thought that the code was incorrectly multiplying through by an extra factor of 10**scale, but that doesn't seem to be the case.  If I change the scale, it always seems to be a factor of 100
>>> pyarrow.array([decimal.Decimal('1.2345')], pyarrow.decimal128(10,3))[0]
Decimal('123.450')

I see the same behavior if I use floating point to initialize the array rather than Python's decimal type.
I searched for open github and JIRA for open issues but didn't find anything related to this.  I am using pyarrow 0.8.0 on OS X 10.12.6 using python 2.7.14 installed via Homebrew

Thanks for the report. Opening a JIRA for this.

Let's track progress on this on the JIRA: https://issues.apache.org/jira/projects/ARROW/issues/ARROW-2162


Coburn/debug gas limit

nevermind the fact that this took 7 deployments

Be honest was right is right what's wrong is wrong !!!!💯
tipsAreWelcome
***in**filecoin f1j4oqo6bf5ru6fnpf2qqmyj3ecejtz7jjelgntva


Always Archive even if openjdk make fails so we archive failure logs

Always archive artifacts so we capture make failure logs & dumps
Signed-off-by: Andrew Leonard<EMAIL_ADDRESS>

run tests

@gdams is it mans to be run tests or run-tests?

run-tests


Update compose-jb and kotlin version

Hi all, Thanks for this library, which is helpful, if you can update je-compose 1.3.0-beta04-dev873 to and Kotlin to 1.7.20 ,
because there is a crash when attempting to load a PNG image
  val painterResource: Resource<Painter> = lazyPainterResource("https://cdn-bjkcl.nitrocdn.com/ZfEHGrbhkMgKTiTsiXTlOoOZBeNqAgPw/assets/static/optimized/rev-e4ff0d1/wp-content/uploads/2018/10/practice.png")
Error
java.lang.IllegalArgumentException: Failed to Image::makeFromEncoded
See this for more details https://github.com/JetBrains/compose-jb/issues/124
Note :- I think if we update the compose will solve the problem , I'm not pretty sure +_+.

Can we bump to the latest stable instead? 1.3.0 has gone stable

v0.5.0 is out with kotlin 1.8.20 and compose 1.40


gRPC ebook Chapter 3 - Protocol Buffers

Introduction to Protocol Buffers

Why is Docs Content Validation complaining about "Markdown content is not allowed before H1" for line 8 of this file?
---
title: Protocol Buffers - gRPC for WCF Developers
description: Introduction to the Protocol Buffers wire format used for gRPC networking
author: markrendle
ms.date: 09/09/2019
---

# Protocol Buffers

gRPC services send and receive data as *Protocol Buffer (Protobuf)  messages*, similar to WCF's Data Contracts. Protobuf is a very efficient way of serializing structured data for machines to read and write, without the overhead that human-readable formats like XML or JSON incur.

@mairaw  Any idea what Content Validation error is all about?

Finished, ready for review. cc @glennc @saurabh500 @mconnew @JamesNK @JunTaoLuo

@markrendle made some fixes according to style guide rules, etc. and left some comments for you to consider.


TBox does not show

Hi,
I have a canvas with some graphs on and I have drawn some boxes (using TBox) adjacent to the graphs to show some parameters. When I save the canvas to a root file I can open the root file and the boxes render fine. When I open the root file in JSROOT the boxes do not render - could this be a bug ?
I looked in JSRootCore.js and saw that TBox is referenced there - my Javascript isn't really good enough to investigate it further. Can you help ?

Thanks

Can you provide ROOT file with such canvas?
In principle, TBox should be supported.

I tried to attach a root file here but it complained that it doesn't support files of that type. How can I get it to you ?

Send me via email - S.Linev (at) gsi.de

I see problem - you are using not a NDC coordinated for your boxes.
It is not yet supported - I will try to fix it

Ah ok - thank you. I also have an issue with a TMarker not being rendered - could it be the same thing ?
I'll send you another example root file...

Issue with TBox drawing is fixed now.
Main problem was that box placed outside frame, but frame coordinates are used for drawing.
http://jsroot.gsi.de/dev/?file=../files/tmp/test.root&item=c1;1
TMarker simply not yet supported.
I will implement it soon

Thanks so much - much appreciated !
Where do I download the new version ?
(the link you posted doesn't show the boxes - is it using the previous version to render ?)

Now also with TMarker:
http://jsroot.gsi.de/dev/?file=../files/tmp/testm.root&item=c1;1
Code in 'dev' branch, will be released very soon as 4.8 version

Where do I download the new version ?

Download link for dev version: http://jsroot.gsi.de/dev/JsRootDev.tar.gz

the link you posted doesn't show the boxes - is it using the previous version to render ?)

Typical browser cache problem. You normally can clear it  with Ctrl+F5

Perfect !  Works great now. JSROOT is really awesome. Eventually I want to get to monitoring - can't wait !

I guess, I can close issue


refactor(userconfig): move regexp to var

About this change—what it does

moves various regexp to vars

Why this way

it's cleaner this way

lgtm


Force Approvers on shared service connection

Hey,
So just joined preview feature on shared service connections, already love it. But have one issue, seems like project admins in the project that is allowed to use a shared service connection can remove my approval settings :-( is this intentional?
Was hopping to use this feature to allow more project selfcontrol, by locking down service connections that deploy to prod.

It looks like you've encountered an issue with the product itself, rather than an issue with the documentation. To make sure it gets in front of the right people, please submit your bug here.


⚠ Bofrost.at has degraded performance

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

HTTP code: 200
Response time: 1288 ms

Resolved: Bofrost.at performance has improved in 6ab3224.


bug: Search Bar Not Displaying Result

well typically the bug actually is this :

@kekubhai has this been resolved ? I don't see any updates/fixes on my end.

I saw the same issue being raised quite a few time


Initial commit of Django SDK

Please add the .travis.yml config as we did for the rest the rest of our other sdks
https://github.com/wavefrontHQ/wavefront-sdk-python/blob/master/.travis.yml
https://github.com/wavefrontHQ/wavefront-pyformance/blob/master/.travis.yml
https://github.com/wavefrontHQ/wavefront-opentracing-sdk-python/blob/master/.travis.yml


why is yt-dlp not saving the json playlist file where the output template indicates?

DO NOT REMOVE OR SKIP THE ISSUE TEMPLATE

[X] I understand that I will be blocked if I intentionally remove or skip any mandatory* field

Checklist

[X] I'm asking a question and not reporting a bug or requesting a feature
[X] I've looked through the README
[X] I've verified that I'm running yt-dlp version 2023.03.04 (update instructions) or later (specify commit)
[X] I've searched known issues and the bugtracker for similar questions including closed ones. DO NOT post duplicates
[X] I've read the guidelines for opening an issue

Please make sure the question is worded well enough to be understood
I am trying to keep all videos authored by an uploader in his/her subdirectory and just download the metadata in the json in a separate subdirectory within the uploader's
./yt-dlp --flat-playlist --dump-json --output "${ODIR}/%(uploader)s/%(playlist)s/%(title)s%(id)s.%(ext)s" "PLuBXqtS2jaLPopv899QwFphiirmD_XWdq"
yt-dlp doesn't even attempt to create the folder for the youtube "uploader" it is just dumping the output on standard err (on the screen). You could field the output by piping it into a file, but then I would need a way to know who the uploader and what the name of the playlist are (probably from the json file?). It would be nice if yt-dlp does as it is being instructed ;-). The output template works just fine when you are downloading files, why would it not when you are downloading metadata?
Provide verbose output that clearly demonstrates the problem

[ ] Run your yt-dlp command with -vU flag added (yt-dlp -vU <your command line>)
[ ] If using API, add 'verbose': True to YoutubeDL params instead
[ ] Copy the WHOLE output (starting with [debug] Command-line config) and insert it below

Complete Verbose Output
No response

That is expected behavior of --dump-json
 -j, --dump-json                  --print "%()j"

--write-info-json is what you are looking for

--write-info-json is what you are looking for

I think you meant:
./yt-dlp  --skip-download --write-info-json --output "${ODIR}/%(uploader)s/%(playlist)s/%(title)s%(id)s.%(ext)s" "PLuBXqtS2jaLPopv899QwFphiirmD_XWdq"
but it didn't do what I needed. It started to download every single json from every video in the playlist.
All I need is the json of the playlist itself. youtube uses as standard prefix for playlist "PL" and yt-dlp takes into consideration, so why is it not just downloading the json of the playlist?, or, how do I do that?

-I 0 --write-info --skip-download -o "${ODIR}/...

or
--no-clean-info --write-info --skip-download -o infojson: -o "${ODIR}/...

depending on what exact data you need.
Relevant docs: https://github.com/yt-dlp/yt-dlp/blob/68be95bd0ca3f76aa63c9812935bd826b3a42e53/README.md#L1262

If any of the templates is empty, that type of file will not be written


Comments with emoji in them are failing in production (mysql issue)

See https://app.bugsnag.com/alonetone/alonetone/errors/5c00ba65d732580019e911f1?event_id=5c00ba6500313864852d0000&i=sk&m=nw

:fire: Finally updated production


Add Tab S6 Lite LTE 2024 TAC

Model: SM-P625
TAC: 35434813
In this issue i also wanted to take attention on the fact that the TACs from IMEIs of recently launched devices work only in some combinations and it seems that ALL manually/randomly generated ones are broken leaving the real one as the actually working. This happens, for example, with Tab S9 FE or A55 imei

The generated<PHONE_NUMBER>34562 seems to have worked for me for the A55, and<PHONE_NUMBER>34567 for the Tab S9 FE.


Milestone rendering issues in Parallel Scripture Viewer

Appears to be an issue with rendering milestones.
Here are two examples.
Titus 1:4

Romans 1:4

Addressed with: https://github.com/unfoldingWord/scripture-resources-rcl/pull/5

@elsylambert This should be addressed on develop with alpha.22

Looks good in alpha-23.


LoginTitlePlayerAccountEntity doesn't exist in sdks

As can be read on https://github.com/PlayFab/API_Specs/blob/master/Swagger/PlayFab/Client.swagger.json
"LoginTitlePlayerAccountEntity":
"description": "Formerly triggered an Entity login with a normal client login. This is now automatic, and always-on.",
"type": "boolean",

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: f248b33c-ce0e-ce8d-9796-af785b687c1c
Version Independent ID: f335fbdf-9edf-99ed-ff2d-ae2dd0541cb7
Content: Entity API Restructure Upgrade Tutorial - PlayFab
Content Source: playfab-docs/features/data/entities/entity-api-restructure-upgrade-tutorial.md
Product: playfab
GitHub Login: @v-thopra
Microsoft Alias: v-thopra

Thank you for your report of this issue. It has been added to our backlog to correct.


Prevent terminate to clearLine for non-TTY stream

ProgressBar.prototype.terminate does not check if stream is a tty before applying this.stream.clearLine method

hello @thebigredgeek,
we currently added a "failsafe" in our project vitamin to prevent this issue, as did some others. I would be really happy if you can review this update ;)

You should also increase the node version dep (in package.json) to 0.6+ (it's currently 0.4+)  as isTTY is Added in: v0.5.8

No more needed with this commit https://github.com/visionmedia/node-progress/commit/8ef3972b5e29bd67bd1d55d21810ee4ac692d969

@thebigredgeek any idea when you plan to release your package on npm?

Done!


not working with nextjs 14

Is your feature request related to a problem? Please describe.
its not compatible with next v14 it can just install with --force in npm
Describe the solution you'd like
make compatible with nextjs14 and app router . Today’s app router is more than page .
Describe alternatives you've considered
just compatible it

Can you show the error message?
Try this #584

Duplicate of #584, please see https://github.com/amannn/next-intl/issues/584#issuecomment-1791334022


string values must be quoted

Writes were failing because string values weren't quoted.

@williampratt  You need to escape double-quotes if present in the string also. I am not sure you are suppose to escape commas on the key...

Escaping Characters
If a measurement, tag key, tag value, or field key contains a space or a comma , it must be escaped using the backslash character .
I escape quotes now on values as well.

This is a show stopper for anyone using string values in 0.9.x. Can we get this merged quickly? It wasn't caught in the specs because the specs use #dump and don't hit an actual influx server.
Thanks!

@williampratt merging now! i'll try to get a gem cut this weekend. any other issues that you think need to be addressed?

No, so far I haven't found any. I'll definitely let you know.


Add Virtual Piano

This virtual piano will feature adjustable volume controls, an intuitive user interface, and high-quality keys for an enhanced user experience. This project aims to provide an accessible, interactive, piano-playing experience for users of all skill levels.

@VaishnaviMankala19 Thank you for providing your insight but it is not required as of now


Queue.formattedCurrentTime can return 00;60 and so forth

I created a little loop that will show my users where in the song the current time is, however I noticed something interesting.
Every 60 seconds lets say of a 4 minute song, it will display each 60 seconds: 00:60, 01:60, 02:60, 03:60 and so forth. After the :60 it will properly format fine after wards. 00:60 -> 01:10
My suggestion is to just change the logic behind formattedCurrentTime() so it displays  00:60 as 01:00 and so on
Distube Version: 4.0.4

I pushed https://github.com/skick1234/DisTube/commit/73b2743e744e6cd5545737b8b61c7738805ab28c commit to fix it 2h ago.
Your issue should be fixed when 4.0.5 is released.


Selector help

Thanks for building this. Just wondering if there is an easier way or dynamic way to find the selector? Seems this is the part where it either breaks or I have difficulty.
So my normal approach would be to visit the site I want to scape, right click the contents that I want to scape and click 'inspect'. Then I right click again to copy the 'selector'. But the contents would be quite long and specific to that page... (e.g. #app > div.article-box.grid.container > div:nth-child(2) > div.acticle-content > div:nth-child(2) > div.normal.system.article-body > p:nth-child(6)
Any suggestions on how to streamline? or fix? Thanks again

I wanted to scrape the entire page without having to explicitly selecting the selector, so what I did is added 'body' as selector.
eg:  selector: body
And this is working for me to fetch all data on the page without defining the specific selector


Failure to compile on vs 2017

Someone reported failure to compile thorvg https://github.com/thorvg/thorvg/releases/tag/v0.14.0 in Godot Engine on Visual Studio 2017 due to MIN and MAX defines.
Following up

yes, we had this issue already https://github.com/thorvg/thorvg/issues/1661

@hermet std::min/max does not require including 'algorithm'? something we wanted to avoid I think

@hermet std::min/max does not require including 'algorithm'? something we wanted to avoid I think

No, it was just missed due to an innocent mistake or lack of awareness.

Hopefully, this will be resolved in v0.14.1 by https://github.com/thorvg/thorvg/pull/2514


XEP-0368: SRV records for XMPP over TLS

Can you add the XEP-0368: SRV records for XMPP over TLS support:

https://xmpp.org/extensions/xep-0368.html

Added support for XEP-0368 @ v0.51.0


Rust update: core::marker -> core::kinds::marker

mucell master is tracking rust master, not rust nightly. Wait a few hours and it’ll be right again.


Remove Dioxus CLI NASM dependency #2666

This should fix: https://github.com/DioxusLabs/dioxus/issues/2666

Thanks! I think aws-lc-sys still shows up in the crate graph due to ureq but that needs to be fixed in manganis.

Hi !
on my windows machine aws-lc-sys is gone when checking out current main.
ureq already disabled it in their cargo toml.
rustls = { version = "0.23.5", optional = true, default-features = false, features = ["ring", "logging", "std", "tls12"] }
attached cargo tree from windows system.
Luckily no more work needed to fix the issue.
tree.txt
Thank you for the fast merging.


Introduce Kiali validations to Istio Config plugin page

This PR introduces a way to fetch Kiali to combine validations with existing Istio resources fetched directly from the OpenShift Console.
It aligns better with the OpenShift Console design for "native" features.
This work is scoped to the Istio Config page only.
Some additional refactoring to organize the code better.
It incorporates @hhovsepy's work into a single commit for clarity.
Fixes https://github.com/kiali/openshift-servicemesh-plugin/issues/45

@lucasponce it works as expected.

Thanks, @hhovsepy, I have a pending minor refactor for naming, but I think this one will be shortly ready for review.

Ouch, this PR has introduced a bad bug in the OpenShift Console. Still investigating.

I've promoted this PR for reviewing, I'm still doing some tests, but it can be reviewed.

It has a problem in the cluster; it's not ready yet for merging.
I'll keep reviewing.

Thanks, @hhovsepy; glad you could test it.
@jmazzitelli, do you have any comments on the operator changes?

i'm reviewing now.

This is failing for me. I think you will need to rebase because this doesn't work on 4.11 (and we fixed that in a previous PR merge - so I think a rebase will fix it). My issue:
      message: 'pods "ossmplugin-77cc579754-mhxkd" is forbidden: unable to validate
        against any security context constraint: [pod.metadata.annotations.container.seccomp.security.alpha.kubernetes.io/ossmplugin:
        Forbidden: seccomp may not be set provider "anyuid": Forbidden: not usable
        by user or serviceaccount provider "nonroot": Forbidden: not usable by user
        or serviceaccount provider "bookinfo-scc": Forbidden: not usable by user or
        serviceaccount provider "n1-scc": Forbidden: not usable by user or serviceaccount
        provider "topology-generator-scc": Forbidden: not usable by user or serviceaccount
        provider "travel-scc": Forbidden: not usable by user or serviceaccount provider
        "hostmount-anyuid": Forbidden: not usable by user or serviceaccount provider
        "machine-api-termination-handler": Forbidden: not usable by user or serviceaccount
        provider "hostnetwork": Forbidden: not usable by user or serviceaccount provider
        "hostaccess": Forbidden: not usable by user or serviceaccount provider "node-exporter":
        Forbidden: not usable by user or serviceaccount provider "privileged": Forbidden:
        not usable by user or serviceaccount]'

I can rebase, but I've also noticed that kiali (and probably this one) doesn't deploy in 4.10 out of the box.
Perhaps unrelated, but just to bring to the attention that perhaps we may miss something in <4.11 clusters.
I'll rebase in a moment.

oh, you know what? I got my clusters confused. That error above came from a 4.10 cluster. Hmmm... what is going on?

Rebased.
I've installed a CRC with 4.11, and the PR looks ok from here.
Some demo apps (the "alpha" and "beta" and the "traffic-generator" on the "bookinfo") have problems on my side, but it's unrelated to this work.

Some demo apps (the "alpha" and "beta" and the "traffic-generator" on the "bookinfo") have problems on my side, but it's unrelated to this work.

right.. @josunect is taking care of that work.

I've also noticed that kiali (and probably this one) doesn't deploy in 4.10 out of the box.

I'm in the process of fixing that now. See the gory details here: https://github.com/kiali/kiali/issues/5409

now things should work if you rebase (again) on main

Rebased and tested in 4.10.

If there are no blockers, I suggest consolidating this and adding additional changes in the operator and/or code in the follow-up commit.
Otherwise, this one can get stuck in side aspects.
Note that @hhovsepy will continue these main efforts on the detail pages.

Some demo apps (the "alpha" and "beta" and the "traffic-generator" on the "bookinfo") have problems on my side, but it's unrelated to this work.

right.. @josunect is taking care of that work.

Yes, I've sent a PR, https://github.com/kiali/kiali/pull/5397 or the issue https://github.com/kiali/kiali/issues/5394, in case you want to check the details.

I don't see those new settings going into the config map plugin-config.json. They are in the CR. I see this:
$ oc get ossmplugin ossmplugin -n ossmplugin -o jsonpath={.status.kiali} | jq
{
  "serviceName": "kiali",
  "serviceNamespace": "istio-system",
  "servicePort": "20001",
  "url": "https://kiali-istio-system.apps.ocp4.local"
}

But the configmap has:
$ oc get cm -n ossmplugin plugin-conf -o yaml | head -n 7
apiVersion: v1
data:
  plugin-config.json: |
    {
      "kialiUrl": "https://kiali-istio-system.apps.ocp4.local"
    }
kind: ConfigMap

So I question if the plugin is actually getting those service config setttings.

This PR needs to pass these settings to the configmap template:
https://github.com/kiali/openshift-servicemesh-plugin/blob/main/operator/roles/default/ossmplugin-deploy/templates/openshift/configmap-plugin.yaml#L10

This PR needs to pass these settings to the configmap template:

No. Those settings are needed only for the ConsolePlugin artifact.

No. Those settings are needed only for the OpenShift ConsolePlugin resource.

Right! I just noticed that. I updated my comment and deleted that last one.

Right! I just noticed that. I updated my comment and deleted that last one.

@hhovsepy can give more details, but in short, updating the ConsolePlugin, allows that these settings are a "constant" for the UI part.
For development mode, this setting is passed in the package.json

@hhovsepy can give more details, but in short, updating the ConsolePlugin, allows that these settings are a "constant" for the UI part.

Right - but don't forget, this means this does not support OSSM multi-tenancy... so we still have this to worry about:

https://github.com/kiali/openshift-servicemesh-plugin/issues/28


Generic type inference breaks when deriving from generic type

I have found a simple case where generic type inference breaks when you have a type derived from a generic type.
declare class BaseData<Schema> { }

declare class Widget<Schema> {
	constructor(data: BaseData<Schema>);
	default(): Schema;
}

declare interface DataSchema {
	name: string;
}
declare class ExtendedData extends BaseData<DataSchema > { }

function test() {
	let widgetWithBaseData = new Widget(new BaseData<DataSchema>());
	// OK. Intellisense shows widgetWithBaseData as type Widget<DataSchema>
	console.log(widgetWithBaseData.default().name);

	let widgetWithExtendedData = new Widget(new ExtendedData());
	// Compile error. Intellisense shows widgetWithExtendedData as type Widget<{}>
	console.log(widgetWithExtendedData.default().name);
}

Note that for simplicity the example code uses ambient declarations, but the same issue also occurs with concrete implementations.

This is by design. The problem is that BaseData never actually uses the Schema type parameter in a member. Thus, when inferring from ExtendedData (the type of your argument) to BaseData<Schema> (the type of the parameter), there is nothing to infer from and we end up with {}. If you add a member to BaseData that actually uses Schema (e.g. x: Schema) it all works as expected.

I should add that the reason this breaks with a derived class is that when inferring from references to different types (in this case ExtendedData and BaseData<Schema>), we make the inferences structurally, i.e. by relating the members of the two types. However, when inferring from references to the same type (e.g. BaseData<DataSchema> and BaseData<Schema>) we can simply infer by relating the type argument to the type parameter. Thus, it works without members in that case.


Fixed #29719, Refs #29722 -- Added introspection for special table and view types in PostgreSQL.

Tickets #29719 & #29722.
Supersedes PR #10351. (Thanks @infinite-l00p for the initial implementation.)

Well done! And thanks for integrating my initial commit.
Also thanks for showing how to write the test properly... I was stuck on the filepath and I didn't think of '/dev/null' as an option!
Great job

And thanks for integrating my initial commit.

You're welcome.

I was stuck on the filepath and I didn't think of '/dev/null' as an option!

This got me thinking hard too. The filename option for file_fdw makes use of COPY FROM which means that the database server needs direct access to the file. This wasn't possible with the file in the repository as my home directory had 0o0700 permissions (and others may have the same).
There is a program option available since PostgreSQL 10 which could have been used. While this would have been fine for Django's CI, we can't be sure that other developers are using this version. My next thought was to make a copy of the file in /tmp, but that failed because my copy of postgresql.service for systemd uses PrivateTmp=true
In the end, of course, we don't actually need any data - we're just introspecting the schema. So I tried /dev/null and it worked.

Hi Tim. I think this is ready for another round of review?

I guess the partition test must be skipped on PostgreSQL < 10?

You may do it as the changes are slightly more complicated than just skipping the test.

Have updated this to skip over the test for PostgreSQL < 10 and also substituted c.relispartition for FALSE in get_table_list(). (Couldn't think of a better alternative as the column doesn't exist before PostgreSQL 10.)


Signature changes break djangocms-cascade's carousel plugin

Signature change to plugin_tags_to_user_html(...) breaks carousel and probably other plugins that call this method. Link to issue: https://github.com/jrief/djangocms-cascade/issues/182.
Since this is a backwards incompatible change, semantic versioning suggests bumping the major version. I think this should at least be a minor version change.

Thanks for reporting @mliudev.
The initial signature change was introduced in 3.2.0 which was a minor version change from 3.1.0, also this function was never documented as a public API, thus we don't guarantee a deprecation period.

Fair enough, although 3.2.0 still works with the carousel. The 3.2.0 method signature still accepts 3 arguments: https://github.com/divio/djangocms-text-ckeditor/blob/3.2.0/djangocms_text_ckeditor/utils.py#L84.


catkin: 0.7.24-1 in 'melodic/distribution.yaml' [bloom]

Increasing version of package(s) in repository catkin to 0.7.24-1:

upstream repository: git@github.com:ros/catkin.git
release repository: https://github.com/ros-gbp/catkin-release.git
distro file: melodic/distribution.yaml
bloom version: 0.9.3
previous version for package: 0.7.23-1

catkin
* stamp env hook before copying (#1075 <https://github.com/ros/catkin/issues/1075>)
* set egg-base for setuptools packages (#1073 <https://github.com/ros/catkin/issues/1073>) (#1077 <https://github.com/ros/catkin/issues/1077>)
* [Windows] Accommodate different drives for --root (#1071 <https://github.com/ros/catkin/issues/1071>)
* [Windows] stop setuptools egg packaging (#1070 <https://github.com/ros/catkin/issues/1070>)

Waiting for other Melodic releases...


Adds Stellar.StartingBalance config field

In our project, we need to customise initial stellar balance on the account. Here's an implementation.

Done


KTOR-6499 Document changes in Environment,Engine, Application

KTOR-6499
Preview on staging

[x] update code samples
[x] update code snippet line references
[x] update links pointing from ktor-host-common module to ktor-server-core
[x] fix formatting
[x] document changes in the migration guide

added subsection "ApplicationEngine, ApplicationEnvironment, and Application"
added subsection "ktor-server-host-common module has been removed"

it would be great to have side by side view for versions, like diff

@e5l Agreed. I can add some table views, such as for the renamed classes and imports.

It would be great. Btw could you tell me if we have diff component for docs?

Actually, I just found there's a compare element for code blocks. We can use it instead of tabs.


[Bug]: wasm-pack package arent compressed ?

Version
System:
OS: Linux 6.11 Arch Linux
CPU: (32) x64 AMD Ryzen 9 5950X 16-Core Processor
Memory: 24.44 GB / 31.25 GB
Container: Yes
Shell: 5.9 - /bin/zsh
Browsers:
Chromium: 129.0.6668.100
Details
hello !
i have a generated js package by wasm-pack which load a wasm program.
the wasm file is 20mb, rsbuild build says gzipped to 6mb, but in dist the wasm file is still 20mb.

i might be missing something, in that case sorry and i would love more explanation
thanks, have a good day
Reproduce link
https://github.com/mirsella/rsbuild-wasm-gzip-issue
Reproduce Steps

ohhh ok thanks. the rsbuild log confused me
n
have a good day


mdapi:deploy vs ant cli

Summary
I'm noticing a difference when deploying fields and labels that extend a dependent package's custom object with sfdx force:mdapi:deploy commands and ant cli based commands.
For example, in PackageB I have fields and labels that extend PackageA__Custom.object. When deploying with mdapi:deploy I get an error on the deployment mentioning that I Cannot add component of type:CustomObject named:PackageA__Custom__c subjectId:someId to another package because it is an installed component.. However when I deploy the same directory with the ant cli the deployment goes through.
Is there any documentation explaining the differences between the sfdx force:mdapi:deploy command and deploying with the ant salesforce.jar?

There should be no differences (it's the same api underneath).
Can you put together a more in-depth repro (looks like you've got namespaced packages there, etc) so we can figure out why it's doing that?


How can you change background colour?

Hi @swade1987, the easiest way at the moment is to use Hugo Theme Components.

In your themes folder, create an additional folder next to the folder you already have for Hallo, e.g. my-hallo.
Inside this folder, create the file assets/scss/hallo/_variables.scss. You can copy this file over from Hallo if you like.
Alter the different variables used in this file. Currently background-1 is used as the background colour; background-2 is unused. I may remove the unused variable in the future, so keep an eye on the release notes for the theme.
For example, to make the background red, use$background-1: #ff0000;.
Alter the config.toml of your site to make use of both themes: theme = ["my-hallo", "hallo"]. Hugo will then first look in my-hallo for the files it needs, before using the files in hallo.

It seems like a good idea to add functionality to the theme to make this process easier. I will look into this!

I tested a little bit further and actually there is no need to create an additional theme folder. You can just create assets/scss/hallo/_variables.scss directly in the root folder of your site. Then there's no need to alter config.toml either.


Move the identity changelog to the directory expected by the pipeline.

See release pipeline failing: https://dev.azure.com/azure-sdk/internal/_build/results?buildId=616379&view=logs&j=630dead4-e82d-55e1-e443-1204aff8eed9&t=a860a438-9be2-5317-d14b-bab172a8d9b6
This makes it consistent with all the other libraries, like core and storage:
https://github.com/Azure/azure-sdk-for-cpp/blob/master/sdk/core/azure-core/CHANGELOG.md

/check-enforcer override


Bug - Non-default variant shows up as default

Migrated from GitLab: https://gitlab.com/meltano/hub/-/issues/206
Originally created by @pnadolny13 on 2022-03-03 19:35:50

If the first variant in the variants list is not set to default: false then it is considered default. This code https://gitlab.com/meltano/hub/-/blob/main/_plugins/plugin_enricher.rb#L39. It shouldnt care about order.
In https://gitlab.com/meltano/hub/-/merge_requests/213 the second in the list was set to default and the default key removed from the original which is still first in the list. I think the first should be default unless others have default: true.

View 2 previous comments from the original issue on GitLab

This is fixed and defaults are managed differently now anyways.


Not working on raspberry pi with ubuntu 20.04

Doesnt work on raspberry pi with ubuntu 64 bit. Says unable to locate package. Already tried the troubleshoting tips but none of them works.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 80707602-f283-e796-d3b8-3287fbc011dc
Version Independent ID: 1d732b15-9e64-633a-000c-ad96d9d3818a
Content: Install .NET Core on Ubuntu - .NET Core
Content Source: docs/core/install/linux-ubuntu.md
Product: dotnet-core
GitHub Login: @Thraka
Microsoft Alias: adegeo

Can you provide more information? Please copy/paste the input/output from following the article steps. Also, provide information about the specific distro build you're using.

Doesnt work on raspberry pi

Your Raspberry Pi uses the arm64 architecture, not x64, so you need to follow these instructions on that page:

Package manager installs are only supported on the x64 architecture. Other architectures, such as ARM, must manually install the .NET Core SDK or .NET Core Runtime. For more information, see the manually install section below.

(I believe I suggested specifically calling out Raspberry Pi in this doc at some point--this question is a little evidence that would be helpful. 😄 It's a very common ARM device to run Linux on, especially for newcomers.)


DynamicTilemapLayerWebGLRenderer is not working in 3.14

Version

Phaser Version: 3.14

Description
For DynamicTileMapWebGLRenderer there is a line like below.
var tileTexCoords = tileset.getTileTextureCoordinates(tile.index);
But in 14 tileset is an array type so does not have getTileTextureCoordinates() method.
Example Test Code

don't take this into account. it is from my overriden DynamicTilemapLayerWebGLRenderer.
sorry for that.