Autogenerate layer control grid

Description
Lately I've been touching the qt layer controls several times in different PRs. Things often got finnicky because of this whole grid system with rows, columns, row spans and column spans. Indeed, I encountered a few cases where things were "broken" and just working by chance, but ready to fall apart at the first touch.
To solve this issue, I came up with a simplified interface. Might be overengineered, but I find it much more intuitive, less error prone and more readable.
QtLayerControls now has a _populate_grid method that takes a list of tuples containing strings, QWidgets, ...s and Nones, and constructs a grid accordingly. Ellipsis is intepreted as "increase the span of the widget before, or the row above". None is an empty space, and strings are simply made into (translated) labels. "Unfinished" row get right-padded with ellipses.
For example, this:
('a label', QSlider, ...),
(...,),
(None, 'another label'),
(QWidget, ..., None),

Will become this:
a label        | QSlider with column span 2         |
with row span 2| and row span 2                     |
-----------------------------------------------------
EMPTY          | another label with column span 2   |
-----------------------------------------------------
Qwidget with column span 2       | EMPTY            |

It's obviously not covering all edge cases, but it's probably good enough for this job. The main advantage of this approach is that it's easy to shuffle around things without having to change all the numbers manually.

Type of change

[ ] Bug-fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

References

How has this been tested?

[ ] example: the test suite for my feature covers cases x, y, and z
[ ] example: all tests pass with my change

Final checklist:

[ ] My PR is the minimum possible work for the desired functionality
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] If I included new strings, I have used trans. to make them localizable.
For more information see our translations guide.

hmm... I feel your pain.  I've definitely been annoyed by having to change those as well.   need to ponder this one a bit.  while I definitely agree that calling _populate_grid is easier to read, the code in _populate grid is definitely harder to parse than the current list of addWidget.

Yeah, I agree. I just figured I'd do it for a couple of layers to see how it looks like and get some feedback here :)

I addressed the comments; I also changed some variable names and used a namedtuple in order to make it more readable. Is it clearer @tlambert03 ?

There does seem to be actual failure since last commit. Which is strange.

Wow, that IS strange! I added a couple of prints just before the error:
                print(grid_widget)
                print(type(grid_widget))
                print(grid_widget['row'])

output:
GridWidget(widget=<PyQt5.QtWidgets.QLabel object at 0x7ff080f21510>, row=0, column=0, row_span=1, column_span=1)
<class 'napari._qt.layer_controls.qt_layer_controls_base.GridWidget'>
Traceback (most recent call last):
    [... stuff ...]
    print(grid_widget['row'])
TypeError: tuple indices must be integers or slices, not str

What the hell?

Well, it turns out I don't know how namedtuple works.

I'm trying to convert this to QFormLayout. One thing I encountered in doing so is that we actually have the same issue as #3624, which was fixed in #3663 for plugins. I moved that piece of code deeper in the dock widget logic to solve the issue for everything.
However, I also noticed that the thing that prevents resizing the left side of the viewer is somehow tied to the layer controls. If you undock the layter controls, suddenly the handle appears and the left dock area can be resized! I could not for the life of me find what the controls have that's different from (say) the layerlist that may be causing this behavour. It must be caused by the fact that layercontrols is completely unresizeable, but I don't know what causes that....

So, I migrated (just one layer for now) to the form layout. I found some issues here and there with resizing and fixed them. I tracked down a particularly annoying one that popped up in many other issues before:
https://user-images.githubusercontent.com/23482191/159722032-0a9a8b34-9ff8-4df5-982f-67d1ae0b17ae.mp4
As you can see, the QSplitter that is the main napari layout should work; the only thing that messes up with it is the layer controls widget. Unfortunately, despite my attempts, I could not find the place where the MaximumSize gets messed up. All the way to the end of the instantiation of QtViewer, that maximum size is set to very high numbers. Somewhere after that, things get messed up, but for some reason only for layer controls, and not for any of the other dock widgets. Any thoughts?

As you can see, the QSplitter that is the main napari layout should work; the only thing that messes up with it is the layer controls widget. Unfortunately, despite my attempts, I could not find the place where the MaximumSize gets messed up. All the way to the end of the instantiation of QtViewer, that maximum size is set to very high numbers. Somewhere after that, things get messed up, but for some reason only for layer controls, and not for any of the other dock widgets. Any thoughts?

I'm so sorry, maybe it's late, but I can't actually tell from the video what isn't working as expected. Can you describe really explicitly and then maybe I can help. When you move the vertical QSplitter left to right the controls expand left to right? Currently on main you can't actually move that QSplitter, no? What do you expect to happen?

When you move the vertical QSplitter left to right the controls expand left to right? Currently on main you can't actually move that QSplitter, no?

Exactly this! On main that Qsplitter is invisible (just lke at the beginning of the clip). With this PR, and additionally that line of code that I run in the console, the QSplitter appears and can be used. I expect the splitter to always be there.

I could not find the place where the MaximumSize gets messed up. All the way to the end of the instantiation of QtViewer, that maximum size is set to very high numbers. Somewhere after that, things get messed up, but for some reason only for layer controls, and not for any of the other dock widgets.

Is it here in the stylesheet?
https://github.com/napari/napari/blob/f015c04df437834f95d7d3e8b0d81442bc76acac/napari/_qt/qt_resources/styles/02_custom.qss#L268-L269

Oh, wow. I thought css was only about colors and stuff like that... This makes things a lot more complicated xD But at least it explains why so much was just kinda happening without a reason.

Those limits were there before me, I just probably moved them from one file to another.  Fine with me to remove them

Thanks @sofroniewn for checking. Not sure what's up with the layerlist widget, I don't see that happening on my side, but maybe it's just too fast. It might be caused by the code I moved with quickly toggles floating? Can you comment out those two lines and see if it still happens?
@jni, I feel like you usually have clear ideas about GUI and layouts; do you see anything off?

You can see some fairly minor changes like the right align instead of the left align which I like.

On my pc it's still left-aligned. I think it's because QFormLayout uses some OS-dependent defaults for this, and I have not set anything.

As for the layout, It should be pretty easy to force the size of the widget to span the whole column, if that's what we want!

Fixed :)

Issues that are somwhat related to the resizing thing, and might be worth revisiting after the small changes here.

https://github.com/napari/napari/issues/1710
https://github.com/napari/napari/issues/3291
https://github.com/napari/napari/issues/3620
https://github.com/napari/napari/issues/2470
https://github.com/napari/napari/issues/2337

Nice! Looking good for image controls in 3D now
I'm still seeing a lot of extra space between the layer controls and the layer list which wasn't there before

I'm also not convinced about the extra configurability of the layer controls and think I would prefer the autogeneration of the controls be a separate PR from the introduction of extra controls for resizing, what do you think about that?

The extra space is just because the maximum height is no longer locked into place, and somewhere else there must be a "weaker" setting which defaults it to a different position. Not sure how to hunt for it...
What is it you don't like about being able to resize the controls? The fact that you couldn't so far was just a bug, and I don't see a reason why it shouldn't be allowed.
But yeah, I should definitely split these out in two PRs at this point :)

I split out the resizing changes into #4368 and removed them from here.

Just to clarify, the "autogeneration" was an earlier iteration of this PR. Now I'm just using QFormLayout which is a code Qt widget. So the code is not as obscure as it was before :P

I've left a comment asking for clarification on why the plane controls needed piecing out, if we can't encapsulate more complex controls into their own widgets with this autogeneration that feels to me like an argument against autogeneration.

Yeah, this is the one thing that bothers me; maybe a solution is to (instead of having a single widget) putting all the "turn off/turn on" logic in a separate method?

One other general feeling is that I'm not sure whether accepting visual inconsistencies for the sake of autogeneration (a 'nice to have' feature) is a good tradeoff.

I agree that we need to find a way to fix visual inconsistencies; maybe this can be fixed by overriding something deep in Qt so that the padding disappears if the widget is not visible.
However, note that here we're simply replacing one visual inconsistency with another. Here's main vs this pr: notice how the plane controls are out of line on main, which is fixed here. However, this PR adds the "spacing". By the way, we only have issues in the plane controls on the image layer.

Overall I think these are good reasons not to merge here but don't feel too strongly about it and don't want to block if others feel like the benefits outweigh the negatives highlighted slightly_smiling_face

I'm ok with not merging if other people feel like this is not solving problems, so let's wait for other to chip in :).
I would like to point out that #4381 is attempting to add tabs to layer controls, and it might be usefult to think of that in this context. For example, it might be worth moving "more complex controls" (like the plane controls) to its own tab, which would solve some of our problems. On the other hand, tabs might make this completely obsolete :P

oh, weird! I had updated the qss so it looked right on my machine but your text looks larger in general - this is main on mac

https://github.com/napari/napari/blob/68d2c1b638c5481fde4364acb4abc4a8a4ce7c00/napari/_qt/qt_resources/styles/02_custom.qss#L295-L312
Not sure how to deal with getting this right on all platforms though :/
Will leave a comment on the tabbed controls at #4381

One other general feeling is that I'm not sure whether accepting visual inconsistencies for the sake of autogeneration (a 'nice to have' feature) is a good tradeoff.

Personally I think simple code is very important and from what I can see above, most of the visual issues have been addressed. What remains to be resolved here? The extra spacing at the bottom of the layer controls? I wonder if @sofroniewn or @tlambert03 would have ideas here? Basically we want the layer list to take as much space as is available vertically, right? I think that's a thing in Qt? 😂

Basically we want the layer list to take as much space as is available vertically, right?

Do you mean that the height of both the controls and layerlist would be dynamic?  That actually could be pretty annoying;  imagine using the arrow keys to go through the layers, and the height of the layer-list is constantly changing.  Is that the current intention?

@tlambert03 very good point! I forgot that each layer has different control heights. Hmm. Having said that, that means that we want to make the height of the controls the max of all the layer controls, which is a hard thing to determine dynamically... But maybe feasible? What do you think?

Having said that, that means that we want to make the height of the controls the max of all the layer controls

yeah, I think that's kinda/sorta what we have now (just without closely considering what that height actually should minimally be), right?

which is a hard thing to determine dynamically... But maybe feasible? What do you think?

Feasiblish ™  :joy:
I guess you'd have to determine which configuration of the controls was the tallest (e.g. "image controls with ndisplay = 3 and so on...") and then add up the vertical sizeHints() of all the visible widgets.
In practice, until these controls become very dynamic in terms of the their contents, I suspect it's going to be easier to just manually pick a number and go with it (kinda how it currently is, but perhaps with a more conscious decision on the number)

@jni @tlambert03 I agree that that could be useful, but that's actually unchanged in this PR (and therefore I would suggest to do it in another PR anyways). The issue about spacing that @alisterburt is referring to is actually different; see this comment above for details :)

In practice, we refer to this vertical gap here, above 'plane normal' (main first, this PR second):

Wow! Well, I really could not care less about it! 🤣 (Ok, technically I could, but imho this is definitely worth getting in, then. 😂)

Just to clarify, the "autogeneration" was an earlier iteration of this PR. Now I'm just using QFormLayout which is a code Qt widget. So the code is not as obscure as it was before :P

sorry, I missed that the autogeneration had been removed, shouldn't review PRs on the move, my bad :)

What remains to be resolved here? The extra spacing at the bottom of the layer controls?

two small issues - both minor and non blocking

the slight gap between the layer list and the plane controls
the splitting out of plane controls widget into their individual components widgets

I only highlight the splitting out because this

maybe a solution is to (instead of having a single widget) putting all the "turn off/turn on" logic in a separate method?

is how I originally implemented the plane controls and was asked to turn them into a single widget for maintainability/easy removal in future - I don't really mind either way :)

@alisterburt could you create a new review, maybe as a comment rather than requested changes if you really think it's non-blocking? 😉 That will give us the flexibility to include this in 0.4.16rc0.

done & done!

Boom! Thank you @brisvag and everyone who participated in the various review iterations! :tada:


Expanding card[GSsoc 21)

I want to add this project as my GSSOC 21 program.
please assign it to me.
Thanks

Hi @Deeksha-Rawat  , This has been assigned to you. ☺☺

I have made the PR . Please look into that.
Thank you


Preview

👷 Deploy Preview for timely-brigadeiros-dd9fc4 processing.

Name
Link

🔨 Latest commit
ef965353c773e9a7e2e3d2b433d830a3363e9c10

🔍 Latest deploy log
https://app.netlify.com/sites/timely-brigadeiros-dd9fc4/deploys/64d221b1cb787c0007812692


[feat]Redesign About section #179

I have redesigned the About section according to the designs provided!!

@Vikash-8090-Yadav Please review it!

Great work @coder12git. PLease see this as  well.

Okay, will make it responsive

@Vikash-8090-Yadav Check now, try to make it responsive as much as possible by me.

You can do one thing, for the smaller screen make the responsiveness to the flex col such that the image and the paragraph appear in parallel form one below the other just like as Hero section. This may improve the responsiveness more.
Thanks!

You can do one thing, for the smaller screen make the responsiveness to the flex col such that the image and the paragraph appear in parallel form one below the other just like as Hero section. This may improve the responsiveness more. Thanks!

Done as you said!!

@Vikash-8090-Yadav Review this asap


[BUG] Once again not supported for servers

Spent another fulll day trying to figure out why the hell I cannot join my server. It was due to your mod. Seems like its just made for single player. i really want it in my modpack but man... please start testing your mod on servers since you clearly aren't doing so when you put it out in production.
Server starts, but clients cannot join server. Your mod is destroying the data processor

Client latest: https://pastebin.com/sZnTzhhV
Debug: https://gist.github.com/red2blue/7faacae33dd42745440ddd113cbe8ede
Server latest: https://gist.github.com/red2blue/1d4be5a6150baed1bd3f998ced999151
Please change

to alpha

this is with your latest update btw.

It's marked as a pre-release for a reason, you should expect potential bugs. However, I fail to see how in the logs that my mod is causing issues; nothing points directly to Immersive Weapons. My best guess is that you have other mods scattered about that are breaking something. I see KubeJS modifying data packs, perhaps that's the source of your issue?
I have no trouble setting up a server using my mod.

I have also read the logs two or three times and have not found any issues relating to immersive weapons. Instead of checking all of your mods to see which one was the real issue I can very clearly tell you jumped straight to the mod you have had issues with in the past, which have been fixed. You clearly just lacked the discipline to check what the real issue was and instead you left a really rude issue report and complained about it in other locations that have no involvement with Immersive Weapons. Skill issues...

I have also read the logs two or three times and have not found any issues relating to immersive weapons. Instead of checking all of your mods to see which one was the real issue I can very clearly tell you jumped straight to the mod you have had issues with in the past, which have been fixed. You clearly just lacked the discipline to check what the real issue was and instead you left a really rude issue report and complained about it in other locations that have no involvement with Immersive Weapons. Skill issues...

LMFAO I spent 6 hours before I "jumped" to your mod. I went through Tons of mods, thinking you fixed the server issue. Did you not read what I said?

Who are you?  If I did that in the first place I wouldn't have been in that discord asking for help all day now would i? go away troll

Skill issues...

Skill issues with some guy with developer as his title in GH and no repos. Cute.

Guys, let's not stalk each other on Discord now...
It looks like KubeJS is causing issues, and that's all I can find. Perhaps it's a configuration there? I cannot reproduce the issue. As you saw in my comment (not @Fury-The-Coder's, he is not a developer on this project), I was able to successfully start and join a server with my mod loaded.

Guys, let's not stalk each other on Discord now...
It looks like KubeJS is causing issues, and that's all I can find. Perhaps it's a configuration there? I cannot reproduce the issue. As you saw in my comment (not @Fury-The-Coder's, he is not a developer on this project), I was able to successfully start and join a server with my mod loaded.

Apologies. I realized that and deleted that comment. I will open a ticket with KJS

I do want to mention that I'm not 100% certain that it's KubeJS. That was just the only thing I could find that was modifying recipe serializers and it pointed to a few mods that were being changed, mine being included.
Best of luck, I hope you get the problem solved.

That makes sense though as that is what KubeJS is all about. You can use it to modify recipes with javascript. do you think it's possible that there's a conflict with IW not allowing it to be accessed by KubeJS by chance?

I doubt that, as there isn't anything I do to stop it from being modified. The datapack portion of my mod is setup properly as well. KubeJS should be able to access it.

I doubt that, as there isn't anything I do to stop it from being modified. The datapack portion of my mod is setup properly as well. KubeJS should be able to access it.

I see. damn. looks like its back to the drawing boards. I'll let you know what I find out.


Suggested enhancement: remove $ from README and docs

When using GitHub's "copy code block" functionality and doing a fresh install, it brings over the $ that are in the README.md:
❯ $ cd
$ git clone https://github.com/gpakosz/.tmux.git
$ ln -s -f .tmux/.tmux.conf
$ cp .tmux/.tmux.conf.local .
zsh: command not found: $
zsh: command not found: $
zsh: command not found: $
zsh: command not found: $

The expected flow should work without the $ when copy/pasting the blocks:
❯ cd
git clone https://github.com/gpakosz/.tmux.git
ln -s -f .tmux/.tmux.conf
Cloning into '.tmux'...
remote: Enumerating objects: 969, done.
remote: Counting objects: 100% (14/14), done.
remote: Compressing objects: 100% (12/12), done.
remote: Total 969 (delta 7), reused 2 (delta 2), pack-reused 955
Receiving objects: 100% (969/969), 485.69 KiB | 6.23 MiB/s, done.
Resolving deltas: 100% (516/516), done.

Happy to provide a PR to the docs!!

$ vs # conveys semantics

True!

It's a good thing people don't copy paste random commands from the internet to their terminal

While philosophically I 100% agree, practically I think it's often easier to just copy/paste a long git clone command. And it seems that GitHub is also promoting this kind of workflow. For example, here is a screenshot with the copy/paste flow from the code-block in the readme:

I would argue that feature is a bad idea 🧐

Fair enough!


Fix typos: peformance -> performance; seperate -> separate

Fix typos: peformance -> performance; seperate -> separate

Also made a grammar edit for "programmers". Wasn't sure if that was the intent, but if not it needs to be "a programmer" -- either way it's currently incorrect.

Thanks very much!


[ISSUE#5015]Fix typo of getAllCongestNum in TimerMessageStore

Make sure set the target branch to develop
What is the purpose of the change
fix #5015
Brief changelog
XX
Verifying this change
XXXX
Follow this checklist to help us incorporate your contribution quickly and easily. Notice, it would be helpful if you could finish the following 5 checklist(the last one is not necessary)before request the community to review your PR.

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

Codecov Report

Merging #5016 (146b3e5) into develop (831888d) will increase coverage by 0.03%.
The diff coverage is 0.00%.

@@              Coverage Diff              @@
##             develop    #5016      +/-   ##
=============================================
+ Coverage      43.24%   43.28%   +0.03%
- Complexity      7766     7769       +3
=============================================
  Files            995      995
  Lines          69101    69101
  Branches        9154     9154
=============================================
+ Hits           29883    29908      +25
+ Misses         35465    35439      -26
- Partials        3753     3754       +1

Impacted Files
Coverage Δ

...ocketmq/broker/processor/AdminBrokerProcessor.java
26.57% <0.00%> (ø)

...apache/rocketmq/store/timer/TimerMessageStore.java
54.18% <0.00%> (ø)

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

...org/apache/rocketmq/common/stats/StatsItemSet.java
41.79% <0.00%> (-8.96%)
:arrow_down:

...he/rocketmq/controller/impl/DLedgerController.java
66.49% <0.00%> (-2.62%)
:arrow_down:

...ache/rocketmq/proxy/common/ReceiptHandleGroup.java
65.06% <0.00%> (-1.21%)
:arrow_down:

.../apache/rocketmq/store/ha/DefaultHAConnection.java
65.86% <0.00%> (-1.21%)
:arrow_down:

...ache/rocketmq/broker/client/ConsumerGroupInfo.java
68.46% <0.00%> (-0.91%)
:arrow_down:

...ava/org/apache/rocketmq/store/index/IndexFile.java
73.68% <0.00%> (-0.88%)
:arrow_down:

.../org/apache/rocketmq/store/ha/DefaultHAClient.java
61.53% <0.00%> (-0.52%)
:arrow_down:

... and 9 more

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


Change base branch name from 'master' to 'production'

before we switch the name of the base branch to production we need to trace our CI/CD pipeline to figure out of the branch name change breaks hard coded references.

#160


[WIP] Barcode Type Specification

Work in progress, although it is currently working on my Samsung S8.
Attempting to address #24.
This is a first implementation of adding barcode Type Specifications to the plugin.
My goal is to be able to able to specify the barcode type like so:
String barcode = await BarcodeScanner.scan(types: [BarcodeType.PDF_417]);

I am not fluent in Dart or Kotlin so any constructive criticism would be appreciated.

I need this too, but must work on both Android and iOS

This will be supported from v3.0.0 See https://github.com/mintware-de/flutter_barcode_reader/pull/185 for details


use desc-tex

I suggest that the Note style files and the global bibliography (at least) should logically exist independently of start_paper. They can easily be included and kept up to date in git-versioned projects (including this one) using git submodule, which is less arcane than the make approach.

I like the idea of the DESC style file and bibliography existing outside ofstart_paper - @kadrlica and I talked about this when we were getting started, and ended up doing things this way because it was the simplest way to get someone started writing a paper. As well as stripping out the style and bib files from start_paper, we'd also need to provide instructions for how to run this alternative two-step process (cookiecutter followed by some advanced gittery, it sounds like). An alternative approach could be to find a better way to get people started than cookiecutter, that enabled a one-step start-up as well as a more transparent and dynamic way of providing style files and templates.

The git submodule command to checkout these things could be handled by the Makefile, I think. E.g., if the bibliography repo is called desc_bib, the Makefile would say
desc_bib:
    git submodule add git@github.com:LSSTDESCdesc_bib.git

(or it could check whether cwd is a git repository, and git clone instead if not). This would make it a 1-step process, or pretty close. There seems to be some sophisticated functionality for automstically syncing submodules, but the beautiful thing is that it isn't necessary. In this example, if you just cd desc_bib, then for all intents and purposes you are in a desc_bib clone and can pull/branch/whatever as normal.
To your second point, fwiw, I'm not a fan of cookiecutter, or any procedure whose first instruction is pip install somethingyouhaveneverusedbeforeandwillneveruseagain. Maybe I'm just old.

And getting older all the time! :-) It sounds like the necessary style and class files should live in their own LSSTDESC/texmf repo, then, and that any paper/project repo and start_paper should grab them from there, via git submodule. Maybe you could demo this approach in some repo somewhere, putting the setup instructions in a README? We can then follow suit here.

I think we can reasonably demo the use case in the DESC Style_Guide repo.
Any thoughts on how granular to make this? The start_paper texmf folder includes three logically distinct things, to my mind

journal-supporting classes, bibstys, etc
DESC Note style and graphics (logos)
DESC macros

The first two we can expect to be updated rarely, while the third we want people to feel comfortable suggesting additions to. Keeping it in a separate repo would lower the bar (if only because it would be the only file, not buried 2 directories deep).
To these, we can add the apocryphal DESC bibliography, which is a good idea and something that the Pub Board should probably take responsibility for, unless you have a better idea.

Should probably also think about adding DESC standard acknowledgments.

Interesting point. I'm tempted to suggest distributing them alongside the macros, but it depends where the ultimate home of the standard acknowledgements is. We wouldn't want acknowledgements distributed in one of these repos going out of date because an update to the official version didn't get copied over. (If the official home is our repo, then great, but it's also been suggested that they be posted on a public website.)

Thanks for laying out the logical distinction, Adam. I am a fan of one-stop
shops, so what if we hid the style and class files in a folder called
texmf, but kept the bib file and acknowledgments in the top level? The
whole lot could then be kept in a single repo, named so that everyone's
"paper" folder looked sensible. "desctex"? That would lead to latex
commands like:
\references{desctex/lsstdesc,my_references}

which would call desctex/lsstdesc.bib and so on.
I think the desctex repo should be public, and I don't think it
matters if it contains bib and ackn files as well as sty and cls, but
PubMan @sethdigel should confirm. It'd be nice if "posting on a public
website" could just be providing the link to the desctex repo.

I see your point. I was worried about our non-git-savvy colleagues being intimidated by the apparent complexity of the repo they need to clone to get the DESC macros, but that's perhaps silly. In any case, we can provide direct links to the current macro and bib files for those who want nothing to do with GitHub.
So, in your scheme, desctex would consist of the current start_paper/texmf material, plus the bib file. I would also like to hear from @sethdigel, but assuming he approves then any one of us could in principle copy the contents of texmf over into a new desctex repo.

Do we care about retaining the revision history of the files when we do the copy. It would be nice to have if it isn't too complicated to do.

As far as I know, the only way to keep the history would be to create
desctex as a fork of start_paper, and then delete everything we don't want
to keep. Which is a fine solution, I suppose, as long as you're ok with the
history of all those deleted files hanging around also.

That's an easy route, and fine by me. I would do the fork manually, though,
so as not to show the link between the repos on GitHub (that could lead to
unwanted giant merges). Better to make a fresh clone of start_paper
locally, rename it and clean out everything we don't want, then push to an
empty desctex repo on GitHub.
On Wed, Jun 14, 2017 at 9:36 PM, Adam Mantz<EMAIL_ADDRESS>wrote:

As far as I know, the only way to keep the history would be to create
desctex as a fork of start_paper, and then delete everything we don't want
to keep. Which is a fine solution, I suppose, as long as you're ok with the
history of all those deleted files hanging around also.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/LSSTDESC/start_paper/issues/58#issuecomment-308626359,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AArY9whIo2M4xgW2FWz90QhGoLe1qI3Iks5sELTggaJpZM4Nn6js
.

Some instructions here:
https://help.github.com/articles/duplicating-a-repository/

Awesomesauce.

Sorry to have been slow on the uptake here.

I think the desctex repo should be public, and I don't think it matters if it contains bib and ackn files as well as sty and cls, but PubMan @sethdigel should confirm. It'd be nice if "posting on a public website" could just be providing the link to the desctex repo.

This seems fine to me.  The 'posting on a public Web site' idea is that the DESC Web site should contain some kind of acknowledgment to the agencies and institutions supporting DESC.  Someone suggested that could be a copy of the acknowledgments that we use for papers.  I'm happy to factor that entirely out of this discussion about start_paper.  For DESC people it is fine with me if we keep the standard acknowledgments in a GitHub repository.
The draft DESC Standard Acknowledgments are themselves kind of a template, following the prescription in the Publication Policy about the various things that need to be acknowledged.  I'd like to make it as easy as possible for people to get it right the first time, but I am not sure what the best way would be, in a desctex sense.  We also have slightly different versions for Standard and Key papers; e.g., the Key papers will not have contribution statements or acknowledgements to individual grants.  And at least notionally, we have a short form of the standard acknowledgments, for use in Letters.  This is something that we needed in Fermi LAT, where the word count in the acknowledgments counts against the total, but may be hard to make foolproof in a start_paper sense.
Regarding the concept of a DESC bibtex file; yes, I think we should have one maintained by the Pub Board.  I suspect that at least for DESC papers we can write a script to generate one from ADS.  I don't have any good ideas about how to add in non-DESC papers.  Maybe we shouldn't try.

Ok, I've done the fancy mirror/clone of the repository. The new home of the contents of texmf/ and lsstdesc.bib is https://github.com/LSSTDESC/desc-tex . Let's continue any relevant discussion in the issues there.

The desctex branch of the DESC Style Guide now demos the use of submodule. The desc-tex submodule is already checked in here, as I assume would be the case in start_paper. What that means is that git knows that this external repo is part of the project, but new clones of the project (Style_Guide or start_paper) wouldn't have a full-blown clone of desc-tex included, just an empty directory. (Unless clone is called with --recursive, but that's complicated.)
My suggestion to get around this is to make desc-tex/.git one of the default targets of the Makefile, as in Style_Guide, or a prerequisite for compiling tex (smarter). The rule for making this target is the appropriate git command, git submodule update --init. (Note that this pulls the last version of the submodule that was checked into the superproject, not necessarily the current version. To actually update it, I think you would just want to cd desc-tex && git pull. It would make sense for start_paper to do this when initializing the submodule.)

We also have make update if we want to be explicit about updating the submodule. I think this is better than changing it out from under people when they compile.

Yes, indeed. I meant that it could automatically update when it's cloned the first time.

Thanks, Adam! Alex, might you have some time to try this out in a branch?
You can have cookiecutter use that branch just by modifying the command.

Is everything already implemented in the Makefile, or is there development to do in addition to testing?

I think we need to remove the texmf folder from start_paper, and switch to
using desctex. Not sure how best to import desctex, I guess the Makefile
could do it? The README etc will need updating too.

I'm slightly confused about which Makefile you guys are referring to. If you mean the implementation in Style_Guide, I have tested it. (Note that this is not in the master branch yet...) I think you just need to

git rm lsstdesc.bib texmf/
git submodule add git@github.com:LSSTDESC/desc-tex.git
Change some paths in your other code (texmf becomes desc-tex and the bib file is no longer in ./, but otherwise I don't think anything has moved).

Btw, @kadrlica, can you see the Style Guide? I'm not sure whether these things are readable by DESC members or whether I need to add "Members" as a collaborating team.
Reiterating some of the above, new clones of start_paper won't have desc-tex by default (unless cloned with --recursive, which is a pain to remember), but they will have an empty desc-tex/ folder. So you'd want your Makefile to include something like
default: desc-tex/.git <other things>
desc-tex/.git:
    git submodule update --init

This way, the very first thing make will do is clone desc-tex. Your update target would just need to cd desc-tex && git pull.
And, as Phil points out, the documentation for both start_paper and desc-tex need to be updated. If you can help with the latter, I'd appreciate it (even if just a description of what's there).
Make sense? I can find time to help with the start_paper conversion if forced to.

Thanks Adam - this is indeed what I meant by the Makefile doing the
desc-tex import.

Now it's my turn to be confused. Because of the cookiecutter setup, I don't think we actually clone the start_paper repo (at least not in the conventional way). I just followed the instructions and ran:
cookiecutter https://github.com/DarkEnergyScienceCollaboration/start_paper.git

and then went into the resulting desc-0000-projectname-paper_title directory, but there is no .git directory there. This is born out in how we do make update which is by directly downloading for the github url.
@drphilmarshall you are probably our cookiecutter expert (and main proponent). Any ideas about how to implement @abmantz's suggestion?
@abmantz I cannot access the Style Guide.

I've just added you to Style-Guide as a collaborator.
I'd forgotten that cookiecutter doesn't leave you with a working git repository. That makes things a little more complex. For one thing, you'd really want the user to set up a new git repo immediately after cookiecutting, if they plan on doing so at all. Then, the Makefile could run the right command to get desc-tex based on whether or not ./.git exists. If it does, then the submodule command above is the right thing to do. If not, you'd have it clone desc-tex in the standard way.
Alternatively, if you aren't married to cookiecutter, the mirror/clone procedure we used to create desc-tex from start_paper can be automated easily enough. We'd need another (make-based?) way of collecting/using the metadata that cookiecutter gets.

I'm not a strong proponent of cookiecutter, but @drphilmarshall should comment. Maybe he can also say whether cookiecutter can implement the --recursive option during the initial clone.

The  README now has instructions on how to get/add desc-tex in various circumstances, in case anything above isn't clear.

Thanks, Adam. Cookiecutter just makes a folder, its up to you to check it
in wherever you want it. For this reason, we should add desc-tex to the
.gitignore that cookiecutter makes for you, and then I guess having the
Makefile clone desc-tex makes the most sense (in case you are not ready to
check in your paper/Note folder yet).

Actually, it looks like I was wrong above - turning a start_paper project into a git repository after desc-tex has been cloned inside it wouldn't necessarily cause any problems. (git submodule add is smart enough to recognize that the submodule is already present, and just registers it.) Your solution is appealingly simple in terms of what goes in the Makefile, though. It seems like a good place to start, although I'd be inclined to use make to achieve maximum elegance in the long term.

Thanks for assigning me! Could I have write access then?

@drphilmarshall drives this ship. Maybe he can add you (though I bet he'll tell you to fork and submit a PR...).

I think Write access in exchange for being willing to be assigned issues is a fair deal :-) @abmantz is now on the @LSSTDESC/paper_starters team! Thanks, Adam :-)

I'm not sure how I want to respond to that... if I am not granted write access does that mean that I won't be assigned any more issues?

I believe one can only be assigned issues in a repo if one has Write access
to it... so until now, Adam could not receive any assignments. We've been
using the assign button to suggest who does what on this project: if we're
all happy to re-assign as needed, we could carry on like this. An
alternative would be to only ever self-assign issues, while making
suggestions about who could best do what in the comments. Which approach do
you each prefer?

It doesn't matter to me. My previous comment was definitely intended to be tongue-in-cheek.

:-) I thought it might be, but I wasn't sure!


IPTV reStreaming Server Panel

Aysad Kozanoglu

HTTP ERROR 500 install
:(

I dont know what you mean??
--
Gesendet von der Mail.Ru-App für Android Freitag, 16 März 2018, 09:21nachm. +01:00 von andrect1<EMAIL_ADDRESS>:

HTTP ERROR 500 install
:(
—
You are receiving this because you authored the thread.
Reply to this email directly,  view it on GitHub , or  mute the thread .

i am trying install, but, i can't
when open URL to install i see Error 500
which server is recommended?

Give me the server configs. İ will look
Give me the output from
/etc/Init.d/php-fpm Status
nginx -s status
And give the vhost config
--
Gesendet von der Mail.Ru-App für Android Freitag, 16 März 2018, 10:49nachm. +01:00 von andrect1<EMAIL_ADDRESS>:

i am trying install, but, i can't
when open URL to install i see Error 500
which server is recommended?
—
You are receiving this because you authored the thread.
Reply to this email directly,  view it on GitHub , or  mute the thread .

my server is Apache
Need be nginx ?

Yes friend. My configuration are for nginx...
Gesendet von der Mail.Ru-App für Android Montag, 19 März 2018, 06:41nachm. +01:00 von andrect1<EMAIL_ADDRESS>:

my server is Apache
Need be nginx ?
—
You are receiving this because you authored the thread.
Reply to this email directly,  view it on GitHub , or  mute the thread .

The vhost from apache and nginx are total differently. You have to see This different :-)
Gesendet von der Mail.Ru-App für Android Montag, 19 März 2018, 06:41nachm. +01:00 von andrect1<EMAIL_ADDRESS>:

my server is Apache
Need be nginx ?
—
You are receiving this because you authored the thread.
Reply to this email directly,  view it on GitHub , or  mute the thread .

Anyway i an not the supporter for FOS streaming.
İ an not the developer of FOS. İ forked it ans Made it vor my use tuning changes. My Code is nowhere to fork clone.
So which Source you use or cloned ?
Gesendet von der Mail.Ru-App für Android Montag, 19 März 2018, 06:41nachm. +01:00 von andrect1<EMAIL_ADDRESS>:

my server is Apache
Need be nginx ?
—
You are receiving this because you authored the thread.
Reply to this email directly,  view it on GitHub , or  mute the thread .

first I am trying install localhost

Vhost
vhost_start painel.domain
<VirtualHost <IP_ADDRESS>:80>
ServerName painel.domain
ServerAlias www.painel.domain
ServerAdmin webmaster@domain
DocumentRoot /home/painel/public_html
UseCanonicalName Off
ScriptAlias /cgi-bin/ /home/painel/public_html/cgi-bin/
# Custom settings are loaded below this line (if any exist)
# Include "/usr/local/apache/conf/userdata/painel/painel.domain/*.conf

<IfModule mod_userdir.c>
	UserDir disabled
	UserDir enabled painel
</IfModule>

<IfModule mod_suexec.c>
	SuexecUserGroup painel painel
</IfModule>

<IfModule mod_suphp.c>
	suPHP_UserGroup painel painel
	suPHP_ConfigPath /home/painel
</IfModule>

<Directory "/home/painel/public_html">
	AllowOverride All
</Directory>

# vhost_end painel.domain
http://painel.domain.com/install.php?install
HTTP ERROR 500

You dont need to call install.php extract it and it is ready to use.
I don't use apache so I can't help you. Apache is terrible for using live streaming !
Gesendet von der Mail.Ru-App für Android Montag, 19 März 2018, 07:58nachm. +01:00 von andrect1<EMAIL_ADDRESS>:

Vhost
vhost_start painel.domain
<VirtualHost <IP_ADDRESS>:80>
ServerName painel.domain
ServerAlias  www.painel.domain
ServerAdmin webmaster@domain
DocumentRoot /home/painel/public_html
UseCanonicalName Off
ScriptAlias /cgi-bin/ /home/painel/public_html/cgi-bin/
Custom settings are loaded below this line (if any exist)
Include "/usr/local/apache/conf/userdata/painel/painel.domain/*.conf

	UserDir disabled
	UserDir enabled painel

	SuexecUserGroup painel painel

	suPHP_UserGroup painel painel
	suPHP_ConfigPath /home/painel

<Directory "/home/painel/public_html">
AllowOverride All

vhost_end painel.domain
http://painel.domain.com/install.php?install
HTTP ERROR 500
—
You are receiving this because you authored the thread.
Reply to this email directly,  view it on GitHub , or  mute the thread .

www.hlsserver.com
Gesendet von der Mail.Ru-App für Android Montag, 19 März 2018, 07:58nachm. +01:00 von andrect1<EMAIL_ADDRESS>:

Vhost
vhost_start painel.domain
<VirtualHost <IP_ADDRESS>:80>
ServerName painel.domain
ServerAlias  www.painel.domain
ServerAdmin webmaster@domain
DocumentRoot /home/painel/public_html
UseCanonicalName Off
ScriptAlias /cgi-bin/ /home/painel/public_html/cgi-bin/
Custom settings are loaded below this line (if any exist)
Include "/usr/local/apache/conf/userdata/painel/painel.domain/*.conf

	UserDir disabled
	UserDir enabled painel

	SuexecUserGroup painel painel

	suPHP_UserGroup painel painel
	suPHP_ConfigPath /home/painel

<Directory "/home/painel/public_html">
AllowOverride All

vhost_end painel.domain
http://painel.domain.com/install.php?install
HTTP ERROR 500
—
You are receiving this because you authored the thread.
Reply to this email directly,  view it on GitHub , or  mute the thread .

Hmm
But error 500 Index
Oh God
:(

You can buy the panel script with installation service on www.hlsserver.com
And than I build it for you on centOS , freebsd or debian
No problem.
Otherwise I don't support the source  and with own risk.
--
Gesendet von der Mail.Ru-App für Android Dienstag, 20 März 2018, 00:16vorm. +01:00 von andrect1<EMAIL_ADDRESS>:

Hmm
But error 500 Index
Oh God
:(
—
You are receiving this because you authored the thread.
Reply to this email directly,  view it on GitHub , or  mute the thread .

i having issue with Manage_stream.php ... i dont know why it not showing anything error

hello, can I still buy the hlsserver script?


⚠ Mobitopup has degraded performance

In ede6747, Mobitopup (https://napcard.voz.tech) experienced degraded performance:

HTTP code: 200
Response time: 17082 ms

Resolved: Mobitopup performance has improved in 0cddb03 after 418 days, 1 hour, 3 minutes.


crypto/cipher: io.Reader/Writer implementations for BlockMode

The cipher.Stream interface can be wrapped in a cipher.StreamReader or cipher.StreamWriter for io.Reader/io.Writer implementations. It was be nice to have the same interface for cipher.BlockMode.
The challenge with cipher.BlockMode is that CryptBlocks must be run on byte slices whose lengths are multiples of the block size. I don't see this being a fundamental problem, but it will complicate the implementation. For the Reader, I imagine it would consist of two internal buffers as the state: encrypted to store encrypted  bytes read from the underlying reader, and decrypted to store decrypted bytes to by copy out whenever Read is called. It would operate in two phases: If len(decrypted) == 0, then call Read on the underlying Reader until there is at least BlockSize bytes in encrypted. Then we can decrypt as many blocks as possible from encrypted into decrypted, and return these whenever Read is called until len(decrypted) == 0 again.
I haven't though as much about the Writer, but I suspect it will operate in a similar way.
The implementation is just a rough idea at the moment. I'm creating this issue mainly to see whether there is interest in the idea. If there is, I am happy to write a prototype.

CC @FiloSottile

I have faced the same issue recently and ended up writing my own io.Reader and io.Writer.
Interest seems to be rather limited, but in case it can help, here is my package: github.com/connesc/cipherio.

@FiloSottile : I saw @bcmills CC-ed you and no response followed. Hoping may be you just forgot to reply here and it is possible to get a comment on this?
Personally do not think we should think about specific implementation right now (as in the issue description), but IMHO it is still worth to decide if we should provide io.Reader/io.Writer for block ciphers (and properly handle paddings). It seems like pretty fundamental/basic thing (for example this padding handling is happening in tls.Conn).

We won't provide an easy to use API for unauthenticated block modes, because we don't want them to be easy to use.
Approximately no application should be directly using unauthenticated block (or stream) ciphers, as they let the attacker modify the message, which systematically leads to confidentiality breaks (such as with padding oracle attacks). They are just a building block for AEADs, which is what applications should use instead.
Applications that do need to handle streaming data should use chunked AEAD schemes, where each chunk is authenticated before being released, such as STREAM (#43774, https://github.com/golang/go/issues/49782#issuecomment-978776702).
/cc @golang/security

Applications that do need to handle streaming data should use chunked AEAD schemes, where each chunk is authenticated

Well. This is basically what I (implicitely) meant :)

(#43774, #49782 (comment)).

Thank you for the references. Will track the progress there.


Are types enabled ? for gLTF ?

I was working extensively on gLTF  using this library
while accessing a object wasn't able to auto-type the object so was wondering if its not typecast
ThrelteGltf<{
    nodes: Record<string, any>;
    materials: Record<string, any>;
}>

this the type of threltegltf object and its is a svelte store was trying to access other properties using
gltf.update(channel => {
   var some_obj = channel.nodes["blah"]
})
)

and it returns me a list of this type
Record<String,any>

now the problem is if i want to access an single object from the list i can't cause its of type any .
happy to make a PR if required
PS : raised a issue on discord channel issue link

Issue resolved on Discord


How to properly set up sish

can you please create a beginner friendly tutorial for setting up sish. I followed all steps but at the end when i try to cmmunicate with it aks for password.

same here

same here

I have the same issue! Using Windows 10.
I get this "error":
C:\Users\Toshiba\Downloads\sish-1.1.4.windows-amd64>ssh -R 25565:localhost:25565 ssi.sh<EMAIL_ADDRESS>password:

I have the same issue! Using Windows 10.
I get this "error":
C:\Users\Toshiba\Downloads\sish-1.1.4.windows-amd64>ssh -R 25565:localhost:25565 ssi.sh<EMAIL_ADDRESS>password:

@antoniomika can you help?

@antoniomika can you help?

Sorry folks, you need to self host sish on an outside server in order to use it to forward ports. The above looks like you're attempting to use the demo service. If you read the README, it'll describe why that has been shutdown.

Sorry folks, you need to self host sish on an outside server in order to use it to forward ports. The above looks like you're attempting to use the demo service. If you read the README, it'll describe why that has been shutdown.

Here's a tutorial how to setup an instance in GCP using the free tier: https://github.com/antoniomika/sish#google-cloud-platform


Create a token class to store tokens instead of string 🤓

Create a class like the one below such that any syntax errors can be accurately traced back to the line and column number of the source file.
export class FartToken {
  #value: string;
  #line: number;
  #column: number;
  constructor(value: string, line: number, column: number) {
    this.#value = value;
    this.#line = line;
    this.#column = column;
  }
}

Merged #19.


Offline Lyrics download

When trying to download the lyrics for offline use the dialog box says "Download lyrics for 0 songs?".
Cleared data, cache. Uninstalled, reinstalled. Tried different versions. Clicking yes to download lyrics causes the app to force close.
It was working perfectly before I factory reset my phone.
Thanks

Did the factory reset, by any chance, delete your songs?

It did.  Only lyrics in the folder now are the songs that I've played and it's cached.

Try downloading some new songs to your phone and try again.

No dice.  I tried on a different device. First install of both Google Play Music and Lyrically. Streamed a few songs, switched to downloaded only to verify songs were downloaded. Lyrically finds 0 songs. Clicking yes crashes app.

I guess its because Lyrically can't get a list of songs downloaded through Play Music. However, lyrics are automatically cached so you only need to strream a song once to cache it.
I can't help you any further as I don't have Play Music subscription sorry.

Downgrading to Beta 0.42 works on both devices.   Verified by uninstalling Google Play Music (including downloaded songs) and Lyrically. Installed GPM and Lyrically 0.42.  Everything working perfectly.

Would a screenshot or screen recording of the steps to reproduce the error help at all?

Nope sorry. You didn't try 0.42 earlier?

No. Only tried .51 and.50. Could have sworn I was running the latest version before the reset.  My mistake, all's good now.
Great job on the app otherwise. By far best lyric app I've used on Android.

Cheers.
By the way, no code was changed regarding the downloading of lyrics between 0.42 and 0.51/52.

Strange...


UI freezes sometimes

Version: 1.47.0 (user setup)
Commit: d5e9aa0227e057a60c82568bf31c04730dc15dcd
Date: 2020-07-09T08:02:06.629Z
Electron: 7.3.2
Chrome: 78.0.3904.130
Node.js: 12.8.1
V8: 7.8.279.23-electron.0
OS: Windows_NT x64 10.0.19635
Steps to Reproduce:
this happened recently (~1 week ago)

after file moves or open a new vs code window
UI would freeze sometimes (not always, several times in an hr)

Does this issue occur when all extensions are disabled?: yes

will find out which extension is causing the problem.

still happens after disabled all extensions, freeze time dropped to a few seconds

Same for me on ubuntu.

Can you follow this wiki and post the results back here to understand more about why performance is so bad for you: https://github.com/Microsoft/vscode/wiki/Performance-Issues
Thanks!

Its freezing proceeding a save of the editor, not always but regularly.

I'm also getting random freezes with the current version. I haven't found out yet what causes it, but VSCode becomes completely unresponsive and I have to kill it with the process manager (also Windows 10).
Version: 1.47.0 (user setup)
Commit: d5e9aa0227e057a60c82568bf31c04730dc15dcd
Datum: 2020-07-09T08:02:06.629Z
Electron: 7.3.2
Chrome: 78.0.3904.130
Node.js: 12.8.1
V8: 7.8.279.23-electron.0
Betriebssystem: Windows_NT x64 10.0.18362

Seeing this too. Can't quite put my finger on what's causing it yet. Anecdotally, it seems to be when I'm interacting with the embedded terminal (I'm using git bash on windows 10).
This did not happen in the previous version.

Anecdotally, it seems to be when I'm interacting with the embedded terminal (I'm using git bash on windows 10).

I'm also using git bash on Windows 10 and if I open a couple instances and close them quickly (using the trash bin icon), freezes happen reproducibly.

That's disappeared now, have not seen freezing for at least a week now over successive releases


Doesn't work properly if body is smaller than viewport

I have a page that does not fill the entire viewport, and there is an insensitive (to outside clicks) area at the bottom of viewport.
Why do you add listeners to document.body instead of document?

I have a page that does not fill the entire viewport

But why?

Why do you add listeners to document.body instead of document?

No particular reason, I could change it.

But why?

Because a screen is larger than a content of a page.

No particular reason, I could change it.

Thank you. This fix is better for me than a CSS quirk:
html { height: 100%; }
body { min-height: 100%; }


Using custom images based on condition

Hi all,
I know we can change the shape based on condition
as described here
but the shape is from drawio's gallery
Is it possible to link to a dynamic image. Something like this?

or this?

you can use event image : change url

I'm sorry is it in the Event/Animation Mappings?

I'm afraid I'm using an older version. Idk which version I'm using. How could I check?
Anyways Imma download the newest release.

Found it thank you.

I think I was using a SNAPSHOT version you've released prior to 0.8.0.
All fine now.

The images don't seem to be resizeable.
Can I customize its size?

don't know ?try width and height

I see.
You can only change if the object is already an image not a shape.
It worked after setting width and height
thank you.

You write a new medium blog ?

You write a new medium blog?

not yet though i'm planning to.
is it possible to have a slight fade transition when updating the image?
all this blinking makes it a bit weird.

i can't, it's a draw.io methods

Hm ok.
changing the whole xml makes it refresh faster though
gotta explore this


Updated all deps to latest semver

Fixed linters
Updated deps

Sure thing. Also any idea why travis tests are failing? Because of cache?

Also I would recommend greenskeeper for this repo. Thoughts?

Also I would recommend greenskeeper for this repo. Thoughts?

I've not had great experiences with greenkeeper, it's quite painful to keep up. Updating these deps isn't really something we have to do very often, as contrary to e.g. react-boilerplate having up to date deps is unimportant for this package.

Massive thanks for doing this though, very much appreciated! Just because we don't have to doesn't mean we don't want to update every so often 😊

Updating these deps isn't really something we have to do very often, as contrary to e.g. react-boilerplate having up to date deps is unimportant for this package.

Makes sense. There was a concern with the eslint-plugin-flowtype-errors plugin, which originally locked down the version of flow. To update the version of flow, the plugin needed to be updated. This isnt the case with eslint-plugin-flowtype-errors@2. This was the reason for the update.


bot "failed with the error "curl_error_56""

The past several days I've been unable to use the Slack plug in. I get the error "failed with the error "curl_error_56"" whenever I try the /startwork command. Also looks like the webpage is unreachable. https://tomatobot.matthewhiggins.me/.
Is this app still functional? Thanks!

Yes, the cluster this was hosted on crashed and I haven't had time to rebuild it yet.
In the meantime, it's unpublished from the Slack app directory, and I'll try and get a static page there to note what's happened ASAP.
You're welcome to grab the code and set up your own copy, but I can't give an estimate of when I'll get this fixed at the moment.


Committee class doesn't offer score() method

For convenience it would be nice, if the Committee class would also offer a score() method. This would allow to compare the performance of a simple learner with a committee of learners more easily.

Thanks for the suggestion! I'll implement a '''score()''' method for the '''Committee''' soon. I'll let you know here when it is done and tested!

Alright, I have finally implemented it! It is merged to the master branch. Have fun with it! :)

Cool, thank you!


All numeric types supported in schema default values conversions to C# and TypeScript

I have added support for all numeric types in the DefaultValueGenerator for C# and TypeScript with tests, as we discussed in the NSwag PR 818.

Just one question: What is the type of schema.Default? Isnt it a JToken instead of a primitive value sometimes?

Problem: https://github.com/RSuter/NJsonSchema/pull/458


Chapter 7 Assignment

I still need to work on the "Save and Exit" button. Also, maybe on the layout for the "List" button.

Ok so it's fine if you want to add predefined attributes to the created animals, however, I was thinking of a form structure in which you have a label and a text box for each attribute of each type of animal. In this way, I could fill in the values for each attribute myself and not have them predefined.
This way you can use a radio button for selection animals from a species and not have 3 buttons there each time.

Good work so far but I have some observations:

You have to load animals and employees from xml files on application startup. If you start the application and check Animals.xml file you'll see that it empty (even if you had values in it before starting the application). Take care not to reinitialize the xml files at application startup.

'Save and exit' button saves the entities to xml files but does not exit the application.

For listing all animals I suggest using a table (take a look at JTable)

Regarding the user experience: when creating a new animal/employee the text field has some default value (e.g: enter name). If I select an animal type then the default name is set (this is not the desired behavior). Also when I click on an animal type I have no idea that the animal was created (you have to dispose that frame or show a notice that a new entry was created).

On each controller when you create a new entry you have the following flow: create new entry from GUI fields, load all entities from repository, add the newly created entity to repository, save the entity to repository. You can try a different approach here: How about creating a new method in repository for adding new entities? And all that logic can be done there  (adding and saving to repository)

I hope this observations help you :)

thank you for your observations

Good job :+1:


sending post requests with Norconex

Hi everyone,
I was wondering, is it possible to instruct norconex to send http post requests and to only retain information from the responses to those. I hope the request makes sense!
Thank you in advance for any kind of hint or information on this.

It is currently not a configurable option, but it is possible via creating your own document fetcher.  Luckily, if you know your Java a bit, you can simply extend GenericDocumentFetcher.html#createUriRequest to return an HttpPost instead when appropriate.
Does that answer?

Hey @essiembre ,
thanks a lot for taking the time to respond. Your answer sounds promising. My concern right now is what if I want to do POST at depth level 2, but I want to do GET at levels 0 and 1. Or is this better handled with a regex matching URLs that I want a POST for? Any ideas?

In that method you need to override, you receive a document instance as an argument.
With that object, you should be able to obtain a URL/document depth with doc.getMetadata().getInt("collector.depth");.

hey @essiembre ,
I just wanted to let you know that extending GenericDocumentFetcher and overriding its' createUriRequest worked fine for me.
I configured my crawler with a maxDepth of 0 in order to avoid having to send both GET and POST requests inside the same crawler and because, for some reason, my crawler was unable to find the links that send POST requests.
Thanks a lot.


A plan (for tutorials)

Can we have a plan of tutorials to be made?
Maybe also ordered by priority.

There is an issue for each one. https://github.com/theprivacyguide/theprivacyguide.org/issues?q=is%3Aissue+is%3Aopen+label%3A"Add+Tutorial" Good idea to order them by priority, I'll add priority labels. Also, I consider creating a development branch.

https://github.com/theprivacyguide/theprivacyguide.org/projects/2


Simplify DropZone

Need first to merge this PR before proceeding with this issue: https://github.com/zakodium-oss/analysis-ui-components/pull/181
There should be only one component called DropZone
https://github.com/zakodium-oss/analysis-ui-components/blob/c6f155a72eff63ebc0e237470d14e40aaab0cbaf/src/components/DropZone.tsx#L16-L35
We should add new props message and children.
If there are children they are shown, click has no effect and when drag / drop the children disappear and the message appears.
If there are no children the message appears, click open the dialog box to select files / folder.

i think there's two messages when there is no children
"click or drag and drop your files/folders"
and the second one when draging a file to the component "drop the file" or somthing like that

TBH I think the API with two components will be clearer. For example, when there is a message before dropping, you don't need to add another message while the file is over the component (Maybe just have a transparent grey background). On the other hand, when there is content before dropping, we need a message to instruct the user what is happening.


MissingPluginException: No implementation found for method getApplicationDocumentsDirectory on channel plugins.flutter.io/path_provider_macos

Describe the bug
I am trying to write a test case for Drift Dao. While I run test case, I am seeing below error:
MissingPluginException(No implementation found for method getApplicationDocumentsDirectory on channel plugins.flutter.io/path_provider_macos)
package:flutter/src/services/platform_channel.dart 165:7                     MethodChannel._invokeMethod
===== asynchronous gap ===========================
dart:async                                                                   _completeOnAsyncError
package:database/database.dart                                               _openConnection.<fn>
===== asynchronous gap ===========================
dart:async                                                                   Future.then
package:drift/src/utils/lazy_database.dart 32:27                             LazyDatabase._awaitOpened
package:drift/src/utils/lazy_database.dart 46:12                             LazyDatabase.ensureOpen
package:drift/src/runtime/api/connection_user.dart 160:21                    DatabaseConnectionUser.doWhenOpened
package:drift/src/runtime/query_builder/statements/select/select.dart 67:21  SimpleSelectStatement._getRaw
package:drift/src/runtime/query_builder/statements/select/select.dart 51:12  SimpleSelectStatement.get
package:database/user/user_dao.dart 15:41              UserDao.allUsers
test/database_test.dart 22:34                                                main.<fn>
test/database_test.dart 14:31                                                main.<fn>

database_test.dart:
void main() {
  WidgetsFlutterBinding.ensureInitialized();

  test('test database fetch', () async {
    startKoin((app) {
      app.module(databaseModule);
    });
    UserDao userDao = get<UserDao>();
    List<User> userList =
        await userDao.allUsers;
    print("List Size: ${userList.length}");
  });
}

database_di.dart:
final databaseModule = Module()
  ..single((s) => SomeDB())
  ..single((s) => s.get< SomeDB >().userDao);

database.dart:
import 'dart:io';
import 'package:database/user/user.dart';
import 'package:database/user/user_dao.dart';
import 'package:drift/drift.dart';
import 'package:drift/native.dart';
import 'package:path_provider/path_provider.dart';
import 'package:path/path.dart' as p;

part 'database.g.dart';

@DriftDatabase(tables: [Users], daos: [UserDao])
class SomeDb extends _$SomeDb {
  SomeDb() : super(_openConnection());

  @override
  int get schemaVersion => 1;

  Future<void> deleteAllData() {
    return transaction(() async {
      for (var table in allTables) {
        await delete(table).go();
      }
    });
  }
}

LazyDatabase _openConnection() {
  return LazyDatabase(() async {
    final dbFolder = await getApplicationDocumentsDirectory();
    final file = File(p.join(dbFolder.path, 'db.sqlite'));
    return NativeDatabase(file);
  });
}

pubspec.yaml:
name: database
description: This layer serves as datasource from the local environment
version: 0.0.1
homepage:

environment:
  sdk: ">=2.17.0-266.5.beta <3.0.0"
  flutter: ">=1.17.0"

dependencies:
  flutter:
    sdk: flutter
  drift:
  sqlite3_flutter_libs:
  path_provider:
  path:
  koin: "0.15.0-nullsafety.0"
  koin_flutter:

dev_dependencies:
  koin_test: "0.13.0-nullsafety.0"
  flutter_test:
    sdk: flutter
  flutter_lints:
  drift_dev:
  build_runner:

Can someone help me with this? Let me know if some more details.

Right, path_provider uses platform channels and isn't available in unit tests. I think the easiest way to get a database running in unit tests is to use a different (probably in-memory) database connection:
First, adapt your database constructor to make the connection configurable:
@DriftDatabase(tables: [Users], daos: [UserDao])
class SomeDb extends _$SomeDb {
  SomeDb([QueryExecutor? implementation]) : super(implementation ?? _openConnection());
  // ...

I haven't used package:koin before, but surely there is some way to use different instances during testing. In your app, you'll want to continue using SomeDb(). But in tests, you can now do SomeDb(NativeDatabase.memory()) to open an in-memory database that doesn't require path_provider.


Add ability to return appropriate connector based on PDO driver.

addDefaultConnection now constructs the $config object after extracting the ATTR_DRIVER_NAME from the PDO, thus allow you to leverage Laravel's ConnectionFactory to create the appropriate connector.

I am personally embarrassed to say that I did not test this. I did not notice the ConnectionFactory returns the Connector, not the Connection. I will re-work it to do so.

Ok, I have not had time to fully review this, but I appreciate your efforts and think what you are doing is worthwhile.

I have a working copy. A simple getConnectionClass that accepts the the $driver string can use a switch case to return back the connection class name that can be instantiated. I have a tested and operational POC being used. When I'm free, I can modify my fork and issue a new pull request.


Webpack issue on areNotificationsEnabled with iOS

I am able to call areNotificationsEnabled without issue on my project, but as soon as I webpack, this particular method does not return anything. It appears after line this.areNotificationsEnabledObserver nothing seems to happen.
        areNotificationsEnabled: function (done) {
            var self = this;

            if (!this.areNotificationsEnabledObserver) {
                console.log("areNotificationsEnabled c")
                this.areNotificationsEnabledObserver = this._addObserver("areNotificationsEnabled", function (result) {
                    console.log("result " + JSON.stringify(result));
                    var areEnabledStr = result.userInfo.objectForKey('message');
                    var areEnabled;
                    if (areEnabledStr === "true") {
                        areEnabled = true;
                    }

                    self._removeObserver(self.areNotificationsEnabledObserver, "areNotificationsEnabled");

                    self.areNotificationsEnabledObserver = undefined;
                    done(areEnabled);
                });
                console.log("this.areNotificationsEnabledObserver " + this.areNotificationsEnabledObserver);
            }
            pushHandler.areNotificationsEnabled();
        },

Hey @bnussey,
I couldn't reproduce your error on Android using webpack both with and without uglify. Do you have this issue both on iOS and Android? Also, if you could attach a project where you reproduce the error, that would be great!

Hey @sis0k0 I believe this method always returns true on Android.. have you tried it on iOS?

Hey @sis0k0 just wondering if you tried to do this on iOS?

Seems to be working now since latest releases...


Hello. An example related to Blazor.

Hello. Can you share an example about Blazor? An example related to Blazor server side and client side (WASM).

Hello. Can you share an example about Blazor? An example related to Blazor server side and client side (WASM).

Found this: https://www.fast-report.com/public_download/docs/FRNet/online/en/ProgrammerManual/en-US/Blazor/Preflight.html
It works, but I cant find any OpenSource version...
Also,
Using the official version, settings on the WebReport ex. ShowRefreshButton=false seem to have no effect.
Anyone else have tested this?

No, thanks for your help

Hello!
At the moment the developers are creating a demo for WASM
Best regards
Marat

Hello. Can you share an example about Blazor? An example related to Blazor server side and client side (WASM).

Try this one (forked from KirillKornienko/FastReport.Web.Blazor-DemoProject and slightly edited to run with .NET7)


Fix/documentation clarification

Small updates to documentation:
There were a few spots where the argument is slightly off or maybe hadn't been updated. The Type is correct, just updating the name for documentation purposes.

@solid-akb I've rebased this, and flattened it into a single commit, whilst keeping you as the author (I used your GitHub noreply as the author address)


Extend public/private detection to endpoints

Is your feature request related to a problem? Please describe.
Calling an endpoint with fetch in load causes credentials to be included automatically, unless you specify omit. That's helpful, but it means that pages don't get that nice public cache header, even if they qualify.
Describe the solution you'd like
I can already hear @Conduitry groan as I write these words, but: given that credential forwarding really just means passing along the cookie and authorization headers, we could simply detect whether or not they were read during the request-response cycle. If not, we can surmise that the page is public even if a credentialed fetch was made.
In other words, this blog page...
<script context="module">
  export async function load({ page, fetch }) {
    const res = await fetch(`/blog/${page.params.slug}.json`);
    const post = await res.json();

    return {
      props: post,
      maxage: 60
    };
  }
</script>

...would get cache-control: public,max-age=60 even though it's making a credentialed fetch, because the handler and endpoint don't read the relevant headers:
import db from '$lib/db';

export function get(request) {
  const post = await db.get(request.params.slug);
  if (post) {
    return {
      body: post
    };
  }
}

How important is this feature to you?
It'd be a nice win for end users

As of https://github.com/sveltejs/kit/discussions/5748, the private/public thing is no longer happening because people will just use setHeader


Link the functions img to pdf

Link the functions img to pdf converter to hompage icons

@shivshankar9 can u elaborate this issue ? Does it mean that a pop up must appear directly in the home page , which prompts the user to select images ?

@shivshankar9 can u elaborate this issue ? Does it mean that a pop up must appear directly in the home page , which prompts the user to select images ?

No there is another page linked to img to pdf, you need to setup that function to perform the task perfectly

Oh ok . Can you assign me this issue ?  Thanks in advance !

Oh ok . Can you assign me this issue ? Thanks in advance !

Yeah sure

@shivshankar9 can I start working on it? If @HarshiniMarappan has not started yet? 😄

@shivshankar9 can u assign this issue to someone else , apologies and thanks in advance 😅

@shivshankar9  can you assign me this issue? I got an idea to solve this issue

@shivshankar9 can you assign me this issue? I got an idea to solve this issue

Ok go ahead

Thanks @shivshankar9.I'm working on it

Hai @shivshankar9
I have added the feature image to pdf as per issue #58
Here is an example to convert an image to a pdf
step 1 ) uploaded the image

step 2)  result image to pdf

I have made changes please check comments of issue #58
On Thu, 6 Jan, 2022, 10:59 PM Shiv, @.***> wrote:

Assigned #58 https://github.com/shivshankar9/Student-portal/issues/58
to @Chetan-B-B https://github.com/Chetan-B-B.
—
Reply to this email directly, view it on GitHub
https://github.com/shivshankar9/Student-portal/issues/58#event-5853553721,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ASKJPBAJDVDFMJG2WSRICTDUUXGPNANCNFSM5KAHRINA
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you were assigned.Message ID:
@.***>

Any updates? @Chetan-B-B

Can I send pull request?
On Fri, 18 Feb, 2022, 4:00 PM Aakanksha Bhende, @.***>
wrote:

Any updates? @Chetan-B-B https://github.com/Chetan-B-B
—
Reply to this email directly, view it on GitHub
https://github.com/shivshankar9/Student-portal/issues/58#issuecomment-1044292459,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ASKJPBG4P56TV3U2TRPS6ZLU3YNUFANCNFSM5KAHRINA
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you were mentioned.Message ID:
@.***>

Can I send pull request?
…
On Fri, 18 Feb, 2022, 4:00 PM Aakanksha Bhende, @.> wrote: Any updates? @Chetan-B-B https://github.com/Chetan-B-B — Reply to this email directly, view it on GitHub <#58 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/ASKJPBG4P56TV3U2TRPS6ZLU3YNUFANCNFSM5KAHRINA . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub. You are receiving this because you were mentioned.Message ID: @.>

this issue already resolved.


Markdown linting: low hanging fruit

Summary of the changes (Less than 80 chars)

A continuation of the markdown linting work started in #6842.

That PR should be merged first.

This gets some of the easiest items out of the way, to clear the room for the others.
Resolves:

MD009 (trailing whitespace)
MD012 (multiple line blanks)
MD018 (extra spaces in heading)
MD022 (blank lines around headings)
MD031 (blanks around code fences)
MD032 (blanks around lists)
MD034 (bare URLs)

Supports #5460.

@michaelstaib this workflow is ready for approval.
@glen-84 feel free to review. You may want to go commit by commit as I address each rule in a commit. I kept this one simple, addressing mostly items around whitespace. I've incorporated the changes from the previously merged PR that adds the markdown lint support.

@glen-84 @michaelstaib fixed.

Thank you @SeanKilleen and @glen-84


Update README.md

"short-definition" is not correct.
In the YAML files like data/glossary/minikube.yaml,_data/glossary/application-architect.yaml,data/glossary/cla.yaml ..., "short-description" are used, not "short-definition".

assign @chenopis

@chenopis @zacharysarah Do either of you have some background context short-definition was used here instead of short-decription.  It seems like changing this to short-description would match the glossary YAML files and be less confusing.

@bradtopol short-description is correct; this PR fixes it. 👍
/lgtm
/approve


Rewrite the frontend to React

Description

changed frontend framework from Vue to React

Resolves https://github.com/oasisprotocol/demo-starter/issues/18

As the issue mentions current best partices, maybe the react implementation can directly use v2 and implement SIWE like in the other PR.

As the issue mentions current best partices, maybe the react implementation can directly use v2 and implement SIWE like in the other PR.

SIWE is ideal for the frontend, but I'm not sure if we should also suggest using it in the backend.

When the user rejects the signing the Something went wrong blocks any further interaction => I think giving a way to  the user to retry would be good
When setting a new message, it also asks for the view call to read the message, but still isn't revealing it and you need to click tap to reveal
=>  it can be confusing for the user why he needs to sign more than a tx when setting a message, I think it would better to have the signed view call only when the user want to reveal the message
(nice to have) I think it would be nice if the account was already connected, the user keeps being connected when refreshing the page, most dapps don't lose the connected account. (is maybe a feature of Rainbowkit etc)

All the points were addressed in https://github.com/oasisprotocol/demo-starter/pull/19/commits/d712ab9ff941199a84b688fa1451ed4aedae29df
The reason for not using Rainbowkit is simple, as far as I know currently there is no "sapphire wrapper" support for viem-v2, hence no support for signed queries. Should also be migrated in https://github.com/oasisprotocol/demo-starter/issues/21


Map with locations of same taxa found in input

colored by taxon and whether they are inputs

same as #39


Add tutorial for Llama 3.1 finetuning for production use cases

Thanks for the pr, but it doesn't fit this repo.


React-Native fails with includeReferrer enabled

In the react-native beta, if you init() and include the option {includeReferrer:true}, the client attempts to reference a document and then fails.

Support for React Native is moved to this package: https://github.com/amplitude/Amplitude-ReactNative. Marking this issue as resolved.


Raster Catalogs Section Feedback

"The Catalog is input into the raster DataSource, described in the next page." -> "The Catalog is input into the raster DataSource, described in the next page, which downloads the tiles from these URLs."
"All referenced rasters represent the same content type." <- By "content type", I guess you mean product/band combination. "type" makes me think of cell types from the concepts page. Maybe "band" needs to be added to the concepts page if this hasn't been introduced yet?
One-D
a. What does "h04v09" mean?
b. Looks like the dates are both April 9, 2018. Should this be datetime or am I reading it wrong?
Using External Catalogs
a. What do you mean by "(or a transformation of)"?
b. What metadata are you referring to?
Using Built-in Experimental Catalogs
a. I'm not sure what you mean by "transforming" here? Loading into a DataFrame?
b. Why are these experimental?
I think it could be useful to do a show as well as printSchema on at least 1 of these to help illustrate that these are just URLs not tiles

I am not sure what the plan is, if any to move the pds catalog from  experimental into datasources namespace proper. @metasim any thoughts on what might take to get there...


Application

From @richard-cox on January 3, 2018 15:32
Copied from original issue: SUSE/stratos#93

Done


AttributeError: 'BindGlobal' object has no attribute 'bind'

Hello I'm trying to use it with Tkinter but  get 'AttributeError: 'BindGlobal' object has no attribute 'bind''
how can I fix it ? thanks
import tkinter as tk
from tkinter import messagebox
from bindglobal import BindGlobal

def call_me(event=""):
    messagebox.showinfo("Message","My Message")

root  = tk.Tk()
bg = BindGlobal(widget=root)
bg.bind("<Control-Shift-A>", call_me)

button = tk.Button(root, text="call me", command = call_me)

button.pack()

root.geometry("300x300")

root.mainloop()

I am having this same issue even trying to run the example code from the readme

@jeancloude so I took a look at the code, and using gbind in place of bind got it working

@bleach86  Thank you, works fine!!!
I'm using  bg.gbind ("<Control_L-e>", call_me), works with inverted command, I need to click first 'e' key  and then 'control', isn't possibile do it in reverse?
Thanks!


Dark theme cutting off txt

Tell us what happens instead
Dark theme cuts off bottom of hanging letters in certain styles of txt.

This has been the same for several years on 3 different phones (Galaxy S6, S7E and currently XCharge) all have been through resets and updates  to both OS and Mail, I was hoping a fix would come out on its own but not yet so I will mention it. Did a search and it looks like it may be only me for some reason. Also it is not all type faces or point sizes just some and seems like bold or some kind of highlight.
Environment
K-9 Mail version: 5.6
Android version: 7.1.1
Account type (IMAP, POP3, WebDAV/Exchange): IMAP

Are you sure this is related to the dark theme?

I may have have done it wrong but I replied to the e-mail I received. Here is what I typed into the reply:
Just rechecked and the hanging letters do show up in the light theme. I used the same e-mail to test as I posted in the message for the dark.
Sorry if I did it the wrong way, I'm an old stye techie that doesn't usually need to ask for help. Still getting used to "wiki things" :)

The improvements discussed in #4198 will probably fix this.


THE METHOD SPECIFIED IN THE REQUEST IS NOT ALLOWED FOR THE RESOURCE IDENTIFIED BY THE REQUEST URI

Hi,
I have deployed a Minecraft server using Docker compose with the following configuration:
version: '3.7'
services:
 minecraft:
   image: itzg/minecraft-server:java8-multiarch
   ports:
     - "25565:25565"
     - "25575:25575"
   volumes:
     - /home/vm102/Minecraft/data:/data
   environment:
     EULA: "TRUE"
     TYPE: "FORGE"
     VERSION: "1.12.2"
     FORGEVERSION: "<IP_ADDRESS>55"
     ONLINE_MODE: "FALSE"

I'm using the 1.12.2 Forge version.
Everything seems to load fine except when I try to connect to the server. I add the direction and it seems to identify the server:

However when I attempt to conect I get the error
 THE METHOD SPECIFIED IN THE REQUEST IS NOT ALLOWED FOR THE RESOURCE IDENTIFIED BY THE REQUEST URI
Looking at the Internet it seems that the problem is that I Online_mode is not set up to false. But it is not the case (checked on the container information page on portainer).
On the server side I get this every time I try to log in:
[12:34:46] [Server thread/INFO] [minecraft/NetHandlerLoginServer]: com.mojang.authlib.GameProfile@78364bcf[id=<null>,name=my_user,properties={},legacy=false] (/<IP_ADDRESS>:49599) lost connection: Disconnected

Add OVERRIDE_SERVER_PROPERTIES: "true" to be sure your setting is actively applied to the properties:
https://github.com/itzg/docker-minecraft-server#server-configuration


How to integrate Microsoft Edge WebView2 when installing applications for other devices?

I am having problem when installing flutter application on another machine, webview display error because the machine does not have Microsoft Edge WebView2 installed. How to automatically install Microsoft Edge WebView2 when installing flutter apps

I also need this webview 2 installation @jnschulze.

This would be great if the webview2 can be automatically installed.


Parameterize install_run and fix typenetwork profile

Description
Relates to issue #4519, in which we found that we don't have integration tests for the TypeNetwork profile. This PR makes the integration tests parameterised, which in turn makes it easier to add new profile tests (which in this case, I have done!)
Checklist

[ ] update CHANGELOG.md
[ ] wait for the tests to pass
[ ] request a review

There were various problems with the typenetwork profile that this exposed: missing dependencies, and also a broken check implementation. Fixed them too.

Awesome!

The CI job seems to be stuck.
Can I start performing code-review? I'll probably make small changes and that will naturally restart the CI jobs.

Of course, fine with me!

I don't understand why the install-run jobs get stuck:

It did finish (https://github.com/fonttools/fontbakery/actions/runs/8328519921); I'm not sure why it says it hasn't. Maybe we're now launching too many jobs, but that's just a guess.

@guidoferreyra independently addressed a few of these typenetwork profile issues at #4604

I will update and force-push this PR now to fix the conflict caused by merging #4604 first

The problem was that the names of jobs changed and it was still waiting to run 3 of the required jobs based on their old names.
So I changed the repo settings accordingly and merged it.


RI-668: Update thaw scripts to rebuild container networking

Issue: RI-668

Thank you for submitting a pull request to this project!
Once all check jobs have passed and the pull request has received a
sufficient number of reviews, the repository's gate jobs can be triggered by
adding a comment of :shipit: to this pull request.
When the gate jobs have completed successfully, this pull request will get
merged automatically.

recheck_trusty_swift_deploy


Added ability to add containerClass

Used to add a list of classes to the outermost container component

This has been merged, but Github hasn't noticed. Closing.


Brief flicker when creature rotates in RestaurantViewDemo

I haven't seen this in the game, so this might potentially only affect demos.
But, when changing the creature's rotation with the arrow keys, the body briefly flickers off and back on for a frame. This may be related to something with shaders or viewport textures taking a moment to redraw.

Creatures never really face away from the screen in the game, so I don't think this bug affects anything but the demo.


Laravel 5.4: Call to undefined method Illuminate\Foundation\Application::share()

Installed this package today on a Laravel 5.4 installation. However, when I try to use it, it throws an error, Call to undefined method Illuminate\Foundation\Application::share().
Indeed, from the Laravel 5.4 upgrade guide:

share Method Removed

The share method has been removed from the container. This was a legacy method that has not been documented in several years. If you are using this method, you should begin using the singleton method instead

share is used in the MailProvider. However, changing it directly to singleton without changing anything else also doesn't work: Container.php line 988: Illegal offset type in unset.

Thank you, that was fixed :)


[1.32.x] - Release Notes for 1.32.0.Final version

Quick update to make Release Notes available for 1.32.0.Final version.

@cristianonicolai please merge once we do the release.

@radtriste feel free to merge


Incorrect small text horizontal position due to font sizing

<clear screen>
<CS:"7 S"><CS:"620;480 V"><CS:"170;30 _"><CS:"4 X"><CS:"24 Y"><CS:"36;36 W"><CS:"8 n"><CS:"1;0000 c"><Small Text>
<Screen Posiiton to 13,0>ながい けいせんぷくさきはんめい<Normal Text><Small Text>
<Screen Posiiton to 15,0><Normal Text>永井圭の潜伏先が判明しました<Medium Text>。

Note in the screenshot above, the furigana is specified as a single line. it is correctly placed for an .ass file but the font width does not allow the text to line up well with the text it's annotating.
In other words, the generated .ass file should specify a small font that allows 'はんめい' to roughly line up with '判明'

specifying proper kerning in the fonts at the top of the .ass file helps a lot. drive the spacing via data taken from the .ts file, but typically horizontal spacing between characters will be 4 for normal text and 2 for medium and small text.


Added dynamic battery widget

Description
For bottom to know that there are no batteries on the system, I added the battery::Manager to the options.rs file because here is the first moment bottom verifies battery configuration by reading the config file, which may or may not contain the battery field, but for a better UX, it doesn't matter what bottom finds in the config file now, if it doesn't retrieve battery data, it just ignores the battery widget all together.
If needed, it can be adjusted so that if the config file contains the battery field, it will still show the widget even without batteries on the system.
Issue
#1
Testing
If relevant, please state how this was tested. All changes must be tested to work:
It was tested with and without config files on a PC without battery and on a laptop with and without battery installed.
If this is a code change, please also indicate which platforms were tested:

[x] Windows
[x] macOS
[x] Linux

Checklist
If relevant, ensure the following have been met:

[x] Areas your change affects have been linted using rustfmt (cargo fmt)
[x] The change has been tested and doesn't appear to cause any unintended breakage
[x] Documentation has been added/updated if needed (README.md, help menu, doc pages, etc.)
[ ] The pull request passes the provided CI pipeline
[x] There are no merge conflicts
[ ] If relevant, new tests were added (don't worry too much about coverage)

I tested this using macOS and it works.

I think you can send the PR to upstream, place a link here to it.

I think you can send the PR to upstream, place a link to it in the pull request.

I've sent the PR, I've put a link to this one in there. Thank you for the tip about #cfg directive.

Link https://github.com/ClementTsang/bottom/pull/975

Link ClementTsang#975

The PR was approved. Thank you once again!

Thanks.


Benchmark and/or optimize performance of updating GeoJson data

Continuation of https://github.com/sargunv/maplibre-compose/issues/42 specifically for GeoJsonSource updation.
When the user passes a URL to the GeoJsonSource, the native SDK is fully responsible for acquiring the data.
But when the user passes some Spatial-K GeoJson objects, our library must convert those to something the native SDK understands. We currently do this by serializing these objects to JSON, and passing that JSON into the native SDK. This probably has significant overhead. The Android and iOS SDKs both have native classes representing GeoJson; is it more performance to manually convert to those? Can Spatial-K serialization be optimized? How much of the work is done in serialization, and how much in the native SDK deserialization?
There may be some use cases (see camera follow demo) where geojson is updated frequently, perhaps every frame. There may be other use cases (see clustering demo) where large geojson is inserted. This demo currently hangs for a moment upon loading.
We should benchmark performance of updating geojson data programatically, and find optimizations.

If using the platform specific data classes for GeoJSON data instead of GeoJson strings turn out to be better for performance, this might lead to replacing Spatial-K with an own actual/expect wrapper around each what the iOS and Android SDK has to offer in terms of GeoJson data classes (unless Spatial-K is already exactly that).
However, keep in mind, before going with this option, that when eventually the C API is released, this would again necessitate to re-do this part (maybe using Spatial-K again, maybe something else).
What I am reading from your comment, it sounds like the current approach is the approach that is most future proof way in this regard. (Just to keep this in mind.)


External access stops with querystring

Hi @MohammadYounes. Before explaining the issue, let me briefly explain my use of OWIN-MixedAuth, noting that I don't want the challenge popup to show for those off the network:

If the user is internal (on the network, using IP address):

Automatically register them and log them in (this is done via the 4 steps you provided) plus a little magic in ExternalLoginCallback

Else if the user is outside of the network (using IP address):

Redirect to the ~/Account/Login page to let them log on using Forms Authentication
Let users with AD credentials hit ~/Account/WindowsLogin, which would pop up the challenge box for username and credentials. The [Windows] button is not being shown on ~/Account/Login.
Those outside of the network should not see an AD challenge popup when just hitting the app.

The above scenario doesn't seem possible. Testing on my phone and a laptop that are not currently connected to the AD, I get odd behavior. Chrome/Safari on my phone bring up the challenge popup when trying to connect to the site root: https://myserver.com/MyApp/. I can get in after providing my credentials.
If we want outside user to logon using challenge popup from ~/Account/WindowsLogin, the above won't work because they will keep getting redirected to ~/Account/Login. Also, adding the button for [Windows] auth won't work, as that also gets redirected to ~/Account/Login.
In Chrome/Safari on my phone, I can go directly to ~/Account/Login without getting prompted by a challenge popup. On a laptop that has been connected to the network but is now connecting via a SIM wireless card, Chrome goes right in -- recognizing my Windows credentials. IE gives me the below URL and dies; does the same thing when I try to go to ~/Account/Login:
https://myserver.com/MyApp/MixedAuth?state=0gLo8jGqbH4IovB3qRVggg4uaccnsDQrtrLWXsZhbhlvWmFOHbAMWbvl3IqO51h1kNUN-XczNoPJeuz-scq_T5l_LH02pYN7jI0oOp9gaIe9pkThvtPaPeeKkKOZlQfO1P5SfyW5ILliTXNH5KDU7yGx21lBTMaWwDeaxILWsXljG-LiKIarjj9p6S2nysM4
Pulling my hair out right now! Your help is very much appreciated, as I'm lost. I'm using the custom method to redirect on IP address and not calling the built-in RegisterMixedAuth in global.asax.cs constructor. Something is amiss here and I don't know what :) Threw the pertinent code on here: https://gist.github.com/arc95/add45ab413e8f5bd52f11ac9ed906143. Once it's working I'll share the code here.
And sorry for all the questions :)

Found a partial solution: added back the [Windows] authentication button to /Account/Login and removed all the items that allowed automatic Windows logon. Now the users are all redirected to the /Account/Login, where they can log on using either Forms or Windows. Clicking the Windows button works on all browsers except IE, where it throws an error:
HTTP401: Denied - The requested resource requires user authentication.
GET - https://myserver.com/MyApp/MixedAuth?state=..........

@arc95 It's hard to figure out what's wrong with the provided info, you need to debug it and see what's wrong and why IE dies on that action.

Thanks, @MohammadYounes Got it working in IE when I logged on the laptop with a different account. Now trying to figure out why the IP redirect + auto Windows logon didn't work for users not on AD.