Initial attempt at support for image and video files.

This is an initial attempt to incorporate support for image and video files in OpenSlides. It seems to work on my side, but testing by others is encouraged.
Fixes #2107.

I tested your branch. It's really great that also images can be projected now! Very nice! Also videos works for me.
Some minor observations (hope you can fix it):

It's not possible to scroll projected images (tested with png/jpg) in non-fullscreen mode. For big images this would be helpful and should be possible.
A playing video (tested with mp4) always restarts if you modify the projector (e.g. switch video to fullscreen, zoom/scroll, add/project a countdown or message)
Have you tested to play a long video (e.g. > 15min)? I am not sure if the auto update makes problem (e.g. the video could be restarts after x min). I observe it if I project a pdf file. After ca. 10min the projector flickers... maybe this has effect on a playing video. You should test this again.

Rest looks nice. Good work! @normanjaeckel should still look a the code.

@lesteenman One wish: Please add the fullscreen mode (used by images and videos) also for pdf files. This would be more consistently.

Thank you all for the feedback. After using this feature in Practice at a large conference 2 weeks back, I've found some more issues myself. I will be looking into them, but not within a month due to deadlines for finishing my study.
If someone else feels like picking it up as well, feel welcome, although I fully intend to do so after finishing my studies.

@lesteenman Ok, we are looking forward to hearing from you with an updated pull request.

@lesteenman when you can finish with this pr?

Probably in July, at the soonest. I'm finishing my thesis at the moment.
I would have time for small fixes, but there are some larger issues with this PR I want to address.

@lesteenman Any news here?

Not yet, I'm afraid. I'm having issues really getting back into development. If anyone else feels like picking it up, feel very welcome.

@emanuelschuetze:

A playing video (tested with mp4) always restarts if you modify the projector (e.g. switch video to fullscreen, zoom/scroll, add/project a countdown or message)

Switching to fullscreen indeed resets. I'm not sure if this can be prevented, however, as you would need to have quite good time synchronization between server and client... And it would still cause jumps in current position if you force the time as kept by the server.
Zoom/Scroll on a page should just not be allowed for video files.
Changing countdowns or messages is a legitimate issue, however. Do you have any idea on how that might be fixed? It seems that this would need to be quite a fundamental change to how the slides are rendered, as the main elements should not be re-rendered when one of the other elements (e.g. timers) are changed. I'm not sure how to approach this at this point.

Django error does not seem to be caused by me:

............................................../home/travis/virtualenv/python3.4.2/lib/python3.4/site-packages/django/template/utils.py:37: RemovedInDjango110Warning: You haven't defined a TEMPLATES setting. You must do so before upgrading to Django 1.10. Otherwise Django will be unable to load templates.

@lesteenman The travis error is caused by a JS syntax error found by jshint:
openslides/mediafiles/static/js/mediafiles/site.js: line 234, col 10, Missing semicolon.

I'll test your PR again and talk with @normanjaeckel about open (projector) issues.

@lesteenman I retested your branch.

Can you find a way to use a "real" fullscreen for videos (my test video is placed on top of black page in full width; it would be nice if you can center it also vertically).
stll open is the issue "replay after switch to fullscreen" - maybe a minor issue which can split out from this pull request @normanjaeckel ?
please change the order of the play/stop buttons of video controls - use the same order like in countdowns: Stop - play/pause
Can you implement a pause function?
image: scrolling (up down) should be used by the global projector scroll buttons (see pdf presentation), maybe also the zoom buttons

Please ping me here if I can retest something. Thanks in advance! I want to get these media controls for 2.1 ;-)

Can you find a way to use a "real" fullscreen for videos (my test video is placed on top of black page in full width; it would be nice if you can center it also vertically).

This is just styling, that should be possible.

stll open is the issue "replay after switch to fullscreen" - maybe a minor issue which can split out from this pull request @normanjaeckel ?

This is a bit more than a minor issue, as this would (I think) require time syncing between clients. Or the clients themselves have to keep track of it between page redraws. Either way, I'd split it from this ticket, as it's still very usable as long as you switch to fullscreen immediately if you want to.

Can you implement a pause function?

Can do, but I feel it might work weirdly. Since videos will only start playing once they have been buffered, all clients watching will pause at a different time. That's why I kept controls like that (also forward/backward) from this patch for now.

image: scrolling (up down) should be used by the global projector scroll buttons (see pdf presentation), maybe also the zoom buttons

In that case, it's probably a different feature request, right?

Can you find a way to use a "real" fullscreen for videos (my test video is placed on top of black page in full width; it would be nice if you can center it also vertically).

Would an implementation that works on all modern browsers with the current situation as a graceful fallback be acceptable for you? (Flexbox)

Yes.

Can you implement a pause function?

Just tried again, and I remember what the issue was: The whole projector screen refreshes when a mediafile command is sent, which causes the video position to reset. Any ideas for that?

Just tried again, and I remember what the issue was: The whole projector screen refreshes when a
mediafile command is sent, which causes the video position to reset. Any ideas for that?

@lesteenman Maybe you can save the timestamp of the current pause position to projector element?
@normanjaeckel Any more ideas how to handle videos on projector?

@lesteenman I retested your branch:

Please change play/stop video control buttons (see countdown control buttons).
My small mp4 video is now centered in fullscreen but not scaled to full width (or height)...

@lesteenman Maybe you can save the timestamp of the current pause position to projector element?

Will this work? I thought the page was refreshed before the command got in, and only the actual page element knows at which position it is.

Please change play/stop video control buttons (see countdown control buttons).

I have those in the patch for play/pause.

My small mp4 video is now centered in fullscreen but not scaled to full width (or height)...

Very good point, I forgot about that bit... Had not tested with smaller videos. Will send in a patch asap.

Will this work? I thought the page was refreshed before the command got in, and only the actual
page element knows at which position it is.

My idea: If you click on pause button send a post request to update the projector element (use a uuid of the video element and save the pause position). See coutdown stop function:
https://github.com/OpenSlides/OpenSlides/blob/master/openslides/core/static/js/core/site.js#L1260
If pause is set in projector element all other clients have to stop the video on given time stamp.

If pause is set in projector element all other clients have to stop the video on given time stamp.

That's actually quite an excellent idea. However, I think it would cause confusion if the 2 buttons, which are quite close to each other (I suppose you mean the one in the expandable dialog with the projector preview?), cause different actions (pause at my point / pause at your current point).

My idea: If you click on pause button send a post request to update the projector element (use a uuid of the video element and save the pause position). See coutdown stop function:

Will check that out later this week.

I suppose you mean the one in the expandable dialog with the projector preview?

Yes, I mean you the countdown controls buttons start/stop (if you expand the projector sidebar and click on "Countdowns", create one if no available).

I think it would cause confusion if the 2 buttons, which are quite close to each other
, cause different actions (pause at my point / pause at your current point).

I don't understand "pause at my point / pause at your current point"...
The admin (user with projector_can_manage permission) has a play button which can click again to pause the video. Now all norman users (with projector_can_see permission) see the video paused on same position, get it from projector element). There is no special play/pause/stop buttons for a normal user. So it's not confused for me...

The admin (user with projector_can_manage permission) has a play button which can click again to pause the video. Now all normal users (with projector_can_see permission) see the video paused on same position, get it from projector element). There is no special play/pause/stop buttons for a normal user. So it's not confused for me...

So the projector element (which is serverside, I think?) has to keep track of their own time track? In that case, as all clients will only start playing once they're buffered, which means they will always be behind on what the server expects, clients will miss parts of the video.
Thus, I assumed you meant it would take the time of the projector preview that you press 'pause' on as the 'master time'. This would still cause issues, however...
The point is: I don't think it's possible to really sync all clients, unless we (can) listen for the bufferready event, and then just fast-forward the client video to what the server thinks the position should be, which means you will always miss the first few seconds of a video (assuming a reasonably fast network).

@normanjaeckel Any more ideas how to handle videos on projector?

I do not know how I can help here. I think the idea is that you save a timestamp in the projector config (via update_elements). The problem is that the controlling client is on angular site module and has no open projector controller. Only within this controller you may know how much time the video was running since start. You may only use some extra buttons inside the projector controller. The admin would have to open an extra projector window to control at least the pause feature of the video. Another approach would be that the admin can only stop and restart the video and has an input field additionally where he could enter xy seconds/minutes. The projector should skip this value after restart.

I think that the current approach would do for now, as implementing a feature that feels broken at start, rather than missing some features, feels wrong to me. Hopefully, the community will have enough feedback as to how this should be done afterwards.

@lesteenman Can you finish this pr in the next days? Some remarks are still open. We want to merge your feature (without any new logic for synchronize videos, stop on special timestamps could be in a new issue for later work) but therefor we have to fix all remarks.

And please rebase on top of master. There is a conflict in projector.js.
Let me know if you need help (or if you have no time to do it). Thanks!

I'll get to it later today, missed the open remarks for a bit. Am I right that these are:

the 'Fullscreen' attribute not being used
Order of the stop/play controls
image: scrolling (up down) should be used by the global projector scroll buttons (see pdf presentation), maybe also the zoom buttons

I think I fixed most of the points. However, it seems that the projector controls don't work with PDF files either. I removed my custom handling of the zoom/scroll controls, and as they're using the same name, the scrolling/zooming using the projector controls should work once it gets fixed for PDF.

Same here: Can this branch be merged as it is now? If so, I'll merge the patches.

@lesteenman I added some remarks - mostly coding style issues. Please fix this and rebase your commits to one commit. Then we will do a last review and merge your pr. - Works really nice. I want it for OpenSlides 2.1 ;-).
Just for note: For PDF presenation you can use the scroll buttons (up/down) of the projector controls (in sidebar). The zoom buttons from the sidebare does not yet works, right. Maybe you want to fix/improve this later?

Please ping me if you finished your work.

@lesteenman ping, when you can finish your work here (next week 2016-09-30) we will reorder all JS files. Then you get a lot of merge conflicts. So let us merge this PR in the next days!

@emanuelschuetze busy few days, I'll probably finish it tonight.

Should be done. The indentation issues are quite annoying as my editor doesn't properly show the difference it seems, but I hope I got them right this time.

Ok, fine. Looks good now for me.
@normanjaeckel Ready for your review and merge.


Removed duplicate Langfuse data and update the contents of Langfuse swags

Solved the issue

@swapnilsparsh We can merge this too bro.


[Documentation]: The GIF in the Unify Integration demo isn't displayed

Documentation Issue Description
The GIF in the Unify Integration demo isn't rendered properly on the docs. I used the same format that we used for our website (https://unify.ai/docs/demos/demos/LlamaIndex/BasicUsage/unify.html#Quality-Routing) but seems like it's not compatible with your doc-builder. Please let me know the correct format for embedding it such it gets properly rendered.
Documentation Link
https://docs.llamaindex.ai/en/stable/examples/llm/unify/

Hello @hello-fri-end! I'm here to help you with any bugs, questions, or contributions you might have. I'm an AI bot and I can assist you while you wait for a human maintainer.
The LlamaIndex documentation does not specify a particular Markdown or HTML syntax for embedding GIFs. However, you can try using the standard Markdown syntax for images, which should work with most doc-builders, including MkDocs:
![Description of the GIF](path/to/your.gif)

If the GIF is hosted externally, you can use the URL directly:
![Description of the GIF](https://example.com/path/to/your.gif)

Ensure that the path or URL is correct and accessible. If the GIF still doesn't render properly, you might want to check the mkdocs.yml configuration file to ensure there are no settings that might be affecting media rendering [1].
If you are using Jupyter notebooks within the documentation, note that the mkdocs-jupyter plugin is configured with execute: false, which means the code within the notebooks won't be executed, but static content like images should still render correctly [1].
For more specific issues, you might need to provide additional details or check if there are any known issues with the mkdocs-jupyter plugin regarding media file rendering.
To continue talking to Dosu, mention @dosu.

Yep, I tried that and it didn't work. I updated it to use the img src tag but that didn't help either. Here's the commit (https://github.com/run-llama/llama_index/commit/10130d1f926f0eb8557d8f9fe7b0cf159ecf5d9d)

To properly render a GIF in your documentation, ensure the md_in_html extension is enabled in your mkdocs.yml file, which it already is. The issue might be related to the path or the way the GIF is referenced.
Here is the correct format to embed a GIF using HTML within Markdown:
<img src="path/to/your/image.gif" alt="Description of GIF">

Ensure the path to the GIF is correct relative to the location of your Markdown file. Additionally, make sure the GIF file is included in the documentation's directory and is accessible. The mkdocs-jupyter plugin should not affect the rendering of static images like GIFs [1].
If the issue persists, double-check the file path and ensure the GIF is correctly placed in the directory structure.
To continue talking to Dosu, mention @dosu.

The path is also correct. The GIF does render properly on Github.

Hey @logan-markewich, can you take a look at this since you merged the PR. Thanks!

that

created #13927 to fix this issue.

that

created #13927 to fix this issue.


chore: move the welcome text into the home content view

Summary of Changes
Moves the word "Welcome" on the home screen into the HomeContentView rather than as part of the no-notifications view.
Related Issues
Please reference here any issue #'s that are relevant to this PR, or simply enter "N/A" if this PR does not relate to any existing issues.
Pull Request Checklist
Tick all boxes below to demonstrate that you have completed the respective task. If the item does not apply to your this PR check it anyway to make it apparent that there's nothing to do.

[ ] All commits contain a DCO Signed-off-by line (we use the DCO GitHub app to enforce this);
[ ] Updated LICENSE-3RD-PARTY.md for any added dependencies or vendored components;
[ ] Updated documentation as needed for changed code and new or modified features;
[ ] Added sufficient tests so that overall code coverage is not reduced.

If you have any questions to any of the points above, just submit and ask! This checklist is here to help you, not to deter you from contributing!
Pro Tip 🤓

Read our contribution guide at least once; it will save you a few review cycles!
Your PR will likely not be reviewed until all the above boxes are checked and all automated tests have passed.

PR template adapted from the Python attrs project.

So it will always show the welcome message now, not just when there are no notifications?

Will fix. I didn't think we had access to useNotifications because it was imported from a hook in BC Wallet. My mistake, we do. I'll also look at contributing this back to @aries-framework/react-hooks so we don't need to duplicate.


Improved :add border-radius for stream-color

Previously It has very sharp corners so add a little css for this and looks much better.
Screenshots
Before

After

@ritikchauhan-01 can you make sure this is consistent with the other places we have similar color pickers?
Also, please write your commit message title more similarly to our commit guidelines.

Can you make sure this is consistent with the other places we have similar color pickers?
@timabbott I checked and did not find other places where we have similar color pickers.


Issues when both kernel and kernel module are updated within the same boot

This hook does stop kernel updates from breaking everything, but if the kernel and a module e.g. nvidia are both updated in the same boot, the nvidia driver seems to stop working (can't start any new processes that use GPU acceleration, e.g. Alacritty). I'm not 100% sure of the exact circumstances that cause this to happen.
This also happens if you updated the kernel then you try to install a new kernel module. The other week I had a kernel update, then later I installed the wireguard module, but I could not load it with modprobe. This seems to be because it installs the module only in the new kernel, but not for the currently running kernel. When I installed wireguard-dkms instead, it installed it for both the running kernel and the new kernel, so I was able to load it.
Is there anything that can be done about this problem?

afaik this already breaks if only the nvidia package is upgraded (more than only pkgrel)
some files (haven’t bothered to find out which yet) from that seem to be required for the module to continue to function properly
so, basically, this is a rather separate issue (although i’d like to have a nice solution for that as well)


How I Can Showing The Preview Of The Code  Without Run The Project Like The Android Code In Android Studio???

Hi!
You need:

IDEA plugin (Compose Multiplatform IDE support plugin for IDEA)
Support for UI tooling
dependencies {
....
implementation(compose.uiTooling)
}
Compose MP build 0.5.0-235+
Mark Composable function without parms with @Preview annotation (import androidx.compose.desktop.ui.tooling.preview.Preview)
A prevew icon will appear left to it.
If you press it, preview will appear in Desktop Preview panel (right-most on the screen).

Tanks loot I did what you said, And Everything works fine

Please check the following ticket on YouTrack for follow-ups to this issue. GitHub issues will be closed in the coming weeks.


Color of text from disabled widgets

Makes active and disabled widgets more distinguishable.

Sorry for ignoring this PR. I didn't get notifications for some reason.


Add Android APK for Korean

See also
https://github.com/k2-fsa/icefall/pull/1651
CC @whsqkaak
You can download pre-built Android APKs at
https://k2-fsa.github.io/sherpa/onnx/android/apk.html

CC @yfyeung


Connect Mute key to TotalMix Dim

Firstly, thanks so much for making this! I attempted something similar in purpose using AHK (using OSC also), which worked but this is so much better.
I was wondering if you had plans to connect up the Mute key to TotalMix's Dim function?
If not, would you be open to a pull request that implements this?

This is now in the works and will be coming soon! 😄

A new version v0.4.0 is now out with this functionality, so I'll close this issue. 😄
Cheers
Fotis


no mutate test for databases

Codecov Report
Patch coverage: 100.00% and project coverage change: +0.02 :tada:

Comparison is base (75619ab) 55.47% compared to head (996de70) 55.50%.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #3307      +/-   ##
==========================================
+ Coverage   55.47%   55.50%   +0.02%
==========================================
  Files         142      142
  Lines       33873    33873
==========================================
+ Hits        18792    18801       +9
+ Misses      13084    13071      -13
- Partials     1997     2001       +4

Impacted Files
Coverage Δ

pkg/object/file.go
65.65% <100.00%> (+0.33%)
:arrow_up:

pkg/chunk/disk_cache.go
72.38% <0.00%> (-1.17%)
:arrow_down:

cmd/objbench.go
57.54% <0.00%> (-1.04%)
:arrow_down:

pkg/vfs/writer.go
77.48% <0.00%> (-0.30%)
:arrow_down:

pkg/meta/sql.go
59.49% <0.00%> (-0.14%)
:arrow_down:

pkg/meta/redis.go
66.68% <0.00%> (-0.04%)
:arrow_down:

pkg/meta/tkv.go
71.21% <0.00%> (+0.11%)
:arrow_up:

pkg/vfs/handle.go
84.32% <0.00%> (+0.74%)
:arrow_up:

pkg/vfs/reader.go
79.43% <0.00%> (+3.63%)
:arrow_up:

... and 1 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Delete Labels & IssueLabels on Repo Delete too

close #15036

@zeripath this is just the SQL query converted from builder into raw SQL ... + an AS ... witch worked on my PC too

MySQL migrations fail with:
Unknown column 'conflicted_files' in 'field list'

Please resolve the conflicts.

conflicts ;)


Day106

Resolves #223.

Pull Request Test Coverage Report for Build 438

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 100.0%

Totals

Change from base Build 429:
0.0%

Covered Lines:
5

Relevant Lines:
5

💛  - Coveralls


Shell scripts to build and deploy. Normalize all configuration data in settings.json.

Please see the change descriptions in the README, in the wiki page "About the command line scripts" and in "Commit #9f31d7057d8b2150bd9b7bf9f6910e31ffed68d6".

Please have another look at :
https://github.com/warehouseman/meteoris/wiki/About-the-command-line-scripts

Ooops.

About this, https://github.com/warehouseman/meteoris/wiki/About-the-command-line-scripts
Why don't You just simply using MUP (from arunoda) for production?

Mup is great.  But I have a particular server setup I do not wish to disturb.
The settings.json docs are at About settings.json and the command line scripts

?

Still to hard for me to understand the documentation without trying it in real world apps. Sadly, I do still doesn't have time to test it yet :(. Please consider to make tutorial using video tutorial if you don't mind. Btw I'll merge the code now, as it will not affect the old meteoris.
Regards


Correct the about description

The about description on Github (hence on Google) is: "Python 3.8 asycnio client for IP Fabric"
There is a typo, it should be "Python 3.8+ asyncio client for IP Fabric"

Thank you.  I will make this correction in the next release.

resolved in v0.8.0


Restore WAY OVER WATERWAY warnings, whatsoever Permanent or Intermittent the waterway

Description
Ways over Waterways (Fords) are a HAZARD, and should be properly identified and mapped. ID shows this hazards and Renders depict and issued a warning about them.
Rapid is NOT currently warning about the Way over Waterway; just Permanent, not for Interminent, Seasonal or Tidal water courses or bodies.
Is a hazard and mappers are NOT being warned about this condition, neither placed manually or atomatically the Fords.

yeah this came up in #1059 too
In #1018 you asked us to remove the warnings when intermittent waterways were involved.
We can restore the warnings, but please try to be more clear when reporting issues.


Wrong initial window size for LV2

I believe this is a bug because VST version of the same plugin starts with the expected size, so do unrelated LV2 plugins on Carla.
DPF c0ad83e

This is not a bug but expected.
The use of lv2 ui resize extensions was a mistake, and we (lv2 devs) are trying to move away from it.
See https://github.com/lv2/pugl/issues/42 for a little more discussion.
If you use carla from git, this will work.
Or wait for 2.3.1 which I will release in a couple of days.
I am trying to lead the way for LV2 plugin UIs to work in terms of size without extensions. It is going to take a little while until everything works 100%, but at least Carla and DPF side are ready now.
(Carla likely will have issues on macOS and Windows, not sure, need to test resizing on those platforms)

That is right, just built latest source it works as expected ( should have tried first in fact ... )
Thanks for sharing the link, interesting discussion.  I'll close the issue now since it does not apply to Carla.git


Relative path not in sorting order

I am testing the isort for pre-commit and found that isort doesn't work as desired in relative path.
Expected order:
from . import A, B
from .A import A
from .B import B
from .. import A, B
from ..A import A
from ..B import B

My setting on setup.cfg is as follows:
[tool:isort]
sections=FUTURE,STDLIB,FIRSTPARTY,THIRDPARTY,LOCALFOLDER
force_sort_within_sections = True
order_by_type = False

What I got from isort:
from . import A, B
from .. import A, B
from ..A import A
from ..B import B
from .A import A
from .B import B

Let me know if I simply miss something. Appreciated!

This should be fixed in the recently released 5.0.0 version of isort: https://timothycrosley.github.io/isort/docs/major_releases/introducing_isort_5/


Unexpected results with Calendar.RecurrenceRule

I tried to use the new Calendar.Recurrence objects and functionality, and I've bumped into some surprising (wrong?) output.
Given the following date range:  2024-01-01...2024-12-31,  I used the .monthly recurrence rule to find every 5th Friday in the given range, using the strict matching rule.
The result was the (correct) following:
2024-03-29
2024-05-31
2024-08-30
2024-11-29

Now if I change the lower bound (start date) of the range to 2024-01-31 the result is unexpectedly the following:
2024-03-29
2024-05-31
// Missing date here
2024-08-30

The 2024-11-29 is missing from the output.
Output becomes even stranger if the calendar's firstWeekday is changed. If firstWeekday == 2, and the lower bound (start day) is 2024-01-01  then the output is the following:
2024-03-29
2024-05-31
2024-08-30
2024-09-27 // Month with only 4 Fridays
2024-11-29
2024-12-27 // Month with only 4 Fridays

If the lower bound (start date) is  2024-01-31 then the result is the following.
2024-03-29
2024-05-31
2024-08-30
// Missing date here
2024-12-27 // Month with only 4 Fridays

I believe that this is a bug, unless I am missing something in the way the algorithm works.
Some code if someone wants to quickly run some tests:
var calendar = Calendar(identifier: .gregorian)
// calendar.firstWeekday = 2

// let startComponents = DateComponents(year: 2024, month: 1, day: 1)
let startComponents = DateComponents(year: 2024, month: 1, day: 31)
let startDate = calendar.date(from: startComponents)!

let endComponents = DateComponents(year: 2024, month: 12, day: 31)
let endDate = calendar.date(from: endComponents)!

let rule = Calendar.RecurrenceRule.monthly(
    calendar: calendar,
    interval: 1,
    matchingPolicy: .strict,
    weekdays: [.nth(5, .friday)]
)

let output = rule.recurrences(of: startDate, in: startDate..<endDate)

Thank you for finding and reporting this! What is happening is that we use a base recurrence to enumerate the monthly repetition, and then move each date to the fifth Friday of that month. Since we are matching strictly, the base recurrence can skip a few months if we start from the 31st.
I'll look into fixing this in #555, where I am optimizing the way we calculate recurrences.


Added polygon filter method to reduce number of polygon given gven from SAM predictions.

Added method to reduce number of polygon points produced by SAM for polygon ouptut .
threshold can be changed to alter the number of polygon points.
This will also help lable studio to load annotations faster and prevent page from crashing.
After Filter

Before Filter

Nice idea, but I have a question, doesn't this mean that you need to point the polygon all the way inside the object?

Hi @samz5320,
We'd like to express our appreciation for your valuable contributions to the playground. Your efforts have significantly aided in enhancing the project's quality.
It is our pleasure to invite you to join our community thorugh Discord_Special Interest Group (SIG) channel. This is a great place to share your experiences, discuss ideas, and connect with other like-minded people. To become a part of the SIG channel, send a message to the moderator, OpenMMLab, briefly introduce yourself and mention your open-source contributions in the #introductions channel. Our team will gladly facilitate your entry. We eagerly await your presence. Please follow this link to join us: https://discord.gg/UjgXkPWNqA.
If you're on WeChat, we'd also love for you to join our community there. Just add our assistant using the WeChat ID: openmmlabwx. When sending the friend request, remember to include the remark "mmsig + Github ID".
Thanks again for your awesome contribution, and we're excited to have you as part of our community!

I misinterpreted what you meant before, sorry, I'll be testing it out soon.

Please resolve the conflict.


UI Step 1 - Issue no. 6

Currently, if one selects "United States (contiguous states)" and a given state (e.g., Florida) and a FAO area that does not make sense (e.g., "Arctic Ocean" in the case of Florida) then presses "Proceed", one can go to Step 2.
===> Please make sure that, if the user selects "United States (contiguous states)" and a given state (e.g., Florida), they can only select FAO areas that make sense (e.g., "Atlantic, Western Central" in the case of Florida).

Will be solved by FAO zone and subcountry lookup table

@FIN-casey:
@FIN-JBarile  let me know that she has received the completed list of sub-countries with corresponding FAO areas from @Dengaloo.
Please solve this issue accordingly. Thanks a lot.

The present issue has been solved. Therefore, I am closing it.


docs: Updated examples to v1

Description
Updating Karpenter docs examples to v1.
Does this change impact docs?

[X ] Yes, PR includes docs updates

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.01%) to 79.967%

Totals

Change from base Build<PHONE_NUMBER>:
0.01%

Covered Lines:
5860

Relevant Lines:
7328

💛  - Coveralls


Update README.md

Fixed a minor typo in the README sending the reader to a 404 page.

Thanks @koladev32 ! 👍🏼


Unable to validate properties of class within viewmodel

I am simply not able to figure out how to use ValidatingModelBase to validate properties of a class within a viewmodel. As a quick test, I modified the Stylet ModelValidation sample to organize the existing properties under a new User class.
using FluentValidation;

namespace Stylet.Samples.ModelValidation.Pages
{
    public class User
    {
        public string UserName { get; set; }
        public string Email { get; set; }
        public Stringable<int> Age { get; set; }
    }

    public class UserViewModel : Screen
    {
        private IWindowManager windowManager;

        public UserViewModel(IWindowManager windowManager, IModelValidator<UserViewModel> validator) : base(validator)
        {
            this.AutoValidate = false;
            this.windowManager = windowManager;
            this.User = new User();
        }

        public User User { get; set; }

        public void Submit()
        {
            if (this.Validate())
            {
                this.windowManager.ShowMessageBox("Successfully submitted", "success");
            }
        }
    }

    public class UserViewModelValidator : AbstractValidator<UserViewModel>
    {
        public UserViewModelValidator()
        {
            RuleFor(x => x.User).SetValidator(new UserValidator());
        }
    }

    public class UserValidator : AbstractValidator<User>
    {
        public UserValidator()
        {
            RuleFor(x => x.UserName).NotEmpty().Length(1, 20);
            RuleFor(x => x.Email).NotEmpty().EmailAddress();
            RuleFor(x => x.Age).Must(x => x.IsValid).WithMessage("{PropertyName} must be a valid number");
            When(x => x.Age.IsValid, () =>
            {
                RuleFor(x => x.Age.Value).GreaterThan(0).WithName("Age");
            });
        }
    }
}

I had to change the databindings in UserView; I tried to bind using the full path as well as by setting a DataContext.
        UserName:
        <TextBox DataContext="{Binding User}" Grid.Row="0" Grid.Column="1" x:Name="UserName" Text="{Binding UserName, UpdateSourceTrigger=PropertyChanged}"/>

        Email:
        <TextBox Grid.Row="1" Grid.Column="1" x:Name="Email" Text="{Binding User.Email, UpdateSourceTrigger=PropertyChanged}"/>

        Age:
        <TextBox Grid.Row="2" Grid.Column="1" x:Name="Age" Text="{Binding User.Age, UpdateSourceTrigger=PropertyChanged}"/>

It's obvious that the validations are actually working in the viewmodel, as the Success message is only thrown when the form is filled out correctly. However, I simply can't figure out to force the failed validations to trigger the error templates in the view.
Any ideas?

Textbox Error template wasn't be triggered is because User class is not based on ValidatingModelBase , so the property of User changed will not trigger INotifyDataErrorInfo.
One way you can do this is like this:
    public class UserViewModel:Screen
    {
        private User _user;
        public User User { get => _user; set => _user = value; }
        public UserViewModel(IModelValidator<UserViewModel> validator,Func<User> userFactory) : base(validator)
        {
            this.User = userFactory();
        }
    }

    public class UserViewModelValidator : AbstractValidator<UserViewModel>
    {
        public UserViewModelValidator()
        {
            RuleFor(x => x.User).Must(user => !user.HasErrors);
        }
    }

    public class User:ValidatingModelBase
    {
        private string _name;

        public string Name { get => _name; set => SetAndNotify(ref _name, value); }

        public User(IModelValidator<User> validator) : base(validator)
        {
            this.Validate();
        }
    }

    public class UserValidator : AbstractValidator<User>
    {
        public UserValidator()
        {
            RuleFor(x => x.Name).NotEmpty().Length(1, 20);
        }
    }

The other way(untested): maybe you can do something like this directly:
        public UserViewModelValidator()
        {
            RuleFor(x=>x.User.Name).NotEmpty().Length(1, 20);
        }

Thanks @RyanYANG52!
Yeah, WPF will only validate properties on classes which implement INotifyDataErrorInfo, as ValidatingModelBase does (or which implement the older IDataErrorInfo). It's similar to INPC: you can only raise PropertyChanged events for properties on classes which implement INotifyPropertyChanged.
In general, you should not bind to something which isn't a ViewModel in MVVM. This is one of the reasons why: the class being bound to often needs to implement INPC or INotifyDataErrorInfo.

Thank you both for the clarifications, this definitely points me in the right direction!
I'm so used to Fody.PropertyChanged automatically injecting INPC notification in my viewmodels that I didn't even think about adding INotifyDataErrorInfo to my model. Any chance of Stylet implementing something like Fody.Validar to achieve this?

@FolkCoder If you're using PropertyChanged.Fody, your ViewModels still need to implement INotifyPropertyChanged (or you need to decorate them with [ImplementPropertyChanged], but that has some downsides). The easiest way to do this is by deriving from PropertyChangedBase or one of its subclasses.
You shouldn't need to implement INotifyDataErrorInfo explicitly in your ViewModels - derive from ValidatingModelBase, which implements INotifyDataErrorInfo for you (that's the point of that class). ValidatingModelBase uses the INPC mechanisms to raise validation errors automatically: whenever a property changes (as detected by the INPC mechanism, including PropertyChanged.Fody), ValidatingModelBase will validate that property and raise any errors. This is all explained in the wiki.

Closing as the discussion seems to have reached a conclusion.


BUG-115806 Yarn log server URL and BUG-114296  CloudBreak needs to configure a unique cluster Id

Changes to fix below issues.
BUG-115806 : Yarn log server URL wiring is missing the protocol
BUG-114296 : CloudBreak needs to configure a unique cluster Id for each workload cluster
Closes #BUG-115806
Closes #BUG-114296

@smaniraju can I ask what the hack are you doing ?


Add automated tests with Cypress

Heads up! The huge line count is 99% package-lock.json. The actual content of this PR is much smaller.
This PR introduces some integration tests we can use to validate the behavior of this plugin as it grows larger.
The testing framework is https://cypress.io, which provides a very nice interface for inspecting running specs and troubleshooting.
One downside of all this is that there is a lot of boilerplate setup that goes against the Cypress best practices of keeping tests self-contained. Basically, the first time the tests are run, we need to install wordpress and install woocommerce. The install process is lengthy and error-prone. Unfortunately, I don't know of a better way to automate those tasks right now.
How to test

docker-compose down --volumes; docker-compose up
cd tests; npm install
npx cypress open
Click on any spec file
Watch it run

:tada: :tada: :tada:

@zuccamia can you help us review this PR, please?

@zuccamia Thanks for trying it out! I was not able to reproduce the missing product problem, but I did find a piece of code that might cause it in some cases.
During the initial setup script, I had it running the importer and then immediately visiting a different page. It's possible that in some environments, that ends up skipping the importer.

I just pushed some code that ensures the import completes before proceeding. When you have time, try again after resetting your database with docker-compose down --volumes.

@Resonious Thanks for the fix even though you couldn't reproduce it locally! I tried again but this time ran into a different issue with missing write permission for Uploads in woocommerce. I think I had this error before but missed it before your fix to complete the importer before proceeding.

I tried looking up the error and found that it works when I define the path for uploads and set 777 permissions to uploads but I think probably 777 permission shouldn't be granted that easily 😅 It looks like maybe I'd need to be an user with such permission in my local docker environment? 🤔

@zuccamia Ah, this explains why the product wasn't showing up!
I'm surprised that the upload directory's permissions seem to be different on your machine, even though it's the same docker container...
I just now amended the Dockerfile to explicitly put 666 permissions on the upload folder. Indeed 777 is too much, but 666 should be fine.

@Resonious Yeah you're right, it's odd I have different permission despite it's the same container (that also defies the point of using docker 😅 ). I'm pretty confused why it didn't work locally for me (while it does for you and on CI). Could it be different docker version? 🤪
It seems to work for me only if I also define the path for file uploads in WORDPRESS_CONFIG_EXTRA, together with 666 permission.
+ define( 'UPLOADS', '/var/www/html/wp-content/uploads' );

@zuccamia Indeed, surprising to see platform differences even via Docker :disappointed:.
Thanks for finding that WORDPRESS_CONFIG_EXTRA option! I added it to the Dockerfile and everything still seems to work for me and on CI. Is it fixed on your end now?

@Resonious I have no idea why tbh but it didn't seem to work with setting the env var in Dockerfile on my end but only with the env vars on the docker-compose.yml here. It looks like env var in Dockerfile should have the same effect though 😓 Sorry I should've been clearer, this is what I tried locally:
# docker-compose.yml:34
WORDPRESS_CONFIG_EXTRA: |
        define( 'WPLANG', '${WPLANG}');
        + define( 'UPLOADS', '/var/www/html/wp-content/uploads' );
        define( 'WP_DEBUG_LOG', '/tmp/wp-errors.log');
        define( 'WP_SITEURL', 'http://' . $$_SERVER['HTTP_HOST']);
        define( 'WP_HOME', 'http://' . $$_SERVER['HTTP_HOST']);

@zuccamia Ah, my bad. I did not realize that the docker-compose.yml was already defining that env var. I wonder if GitHub Actions has macos test runners :cry:
It should work now :pray:

No worries - it's important we get this stuff working on all platforms so that future devs can pick it up too :dizzy_face:


Update manage-resources-containers.md

Add explanation as for why "1500m" is not a whole number.

@g1franc Thanks you for your contribution.
Could you please sign the CLA before the PR can be reviewed.
You can follow the steps documented here: CLA Steps


Failure when using mass_imdb_parental_labels: true

Version Number
1.19.0
What branch are you on?
master
Describe the Bug
In config.yml:
mass_imdb_parental_labels: true
results in failure after updating from 1.18.3.
I pretty much only use PMM to update the parental label tags.  I've verified my very vanilla config.yml works fine in 1.18.3.
Relevant Collection/Overlay/Playlist Definition
mass_imdb_parental_labels: true

Logs
No response

Can you provide a log of this?
1: Go to your config folder
2: Go into the logs folder
3: Look for meta.log (not meta.1.log etc)

Post it here

Thanks

@toddsunpark true is no longer a valid option for mass_imdb_parental_labels
We have instead made control more granular so that you can choose what levels you want:
https://metamanager.wiki/en/latest/config/operations.html#mass-imdb-parental-labels
none, mild, moderate, severe are the availablbe options.


fix(format): remove all whitespace at EOL

Signed-off-by: Felipe Zipitria<EMAIL_ADDRESS>This PR fixes EOL whitespace in assorted files.
Take a special look at .data files, I don't think it changes meaning, but just in case.

Looks good and impressive just how much unnecessary whitespace we still have. Thank you. Merging now.


Added Compliance config toml documentation

@alexpop Can you tell me the related PR number that this documentation reflects?

theres a bunch, heres a prolly incomplete list
https://github.com/chef/automate/pull/3769
https://github.com/chef/automate/pull/3717
https://github.com/chef/automate/pull/3697
https://github.com/chef/automate/pull/3663
https://github.com/chef/automate/pull/3595


fix bug at #L460 in tensorflow/modles

fix the bug in #17

Hey,
please do the PR to dev branch.
Thanks.


$eq operator is broken with certain string values

Steps to reproduce
Perform a filter query with an $eq filter with a string that contains "what JS believes to be a number, but that is actually a string"™
For example, filter.referenceId = $eq:651581942751358e5
Expected result
Elements with the given filter are found.
Actual result
No elements are found
Additional notes
This regression was introduced in #952. It happens because the above string passes the Number.isNumber check, even though the value is not meant to be a number.
In the example above:
const myString = '651581942751358e5'
console.log(Number.isNaN(myString)) // false
console.log(Number(myString)) //<PHONE_NUMBER>5135800000

The Number() conversion is not problematic with values that are actually numbers - but unfortunately JS has a loose interpretation of which strings actually qualify as numbers.

@Helveg thanks for getting back to me. I opened a PR with what might be a way to address this. Let me know what you think.

We could fix this by treating strings with leading zeros as strings and not numbers.

Sounds like there could be more potential edge cases out there. I can't help but feel that perhaps this should be handled differently. Perhaps, type coercion / casting should be opt-in, so that it doesn't happen at all unless the user asks for it - that would avoid having to cater for edge cases in the nestjs-paginate code.

Yea, there's similar problems with treating booleans and null (see a couple of other open issues). I think since we use : as separator, we could allow appending ::number and similar for type casting, pgsql style. That gives more control. Another approach is to go by TypeORM column type.

One approach is to go by TypeORM column type perhaps?

That does indeed sound ideal. I'll try and see if that's easy for me to implement in the open PR.

@Helveg I had a quick look and couldn't see an easy/obvious way to implement this. Let me know if you have time to take a look, if not then I will invest more time in digging.

You can propagate the SelectQueryBuilder from the parent function and use the qb.expressionMap.mainAlias.metadata to get the entity metadata, from there it's typical TypeORM metadata manipulation. findRelationWithPropertyPathand findColumnWithPropertyPath might be useful :)
You can find columns/relations quite easily, but I'm not sure how easy it is to deal with nested relationships and columns. I'm sure that somewhere else in the codebase we deal with this already.

:tada: This issue has been resolved in version 9.3.1 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


[Bug]: The description of the library ticket under the ticket type I initiated is missing

ODC version
4.3.2
OB version
no related
What happened?
The description of the library ticket under the ticket type I initiated is missing

What did you expect to happen?
The ticket information is displayed correctly
How can we reproduce it (as minimally and precisely as possible)?
Open the ticket and click on the one I initiated to view the library ticket type
Anything else we need to know?
No response

I will filter out all ALTER_SCHEDULE flow instances in "all tickets" and "created by me", just as other tasks.

pass


[flutter_tools] fix --observatory-port not working

Description
https://github.com/flutter/flutter/issues/69722
This is only a fix for master/dev/beta. Stable will need a separate cherry pick

@jmagman I don't think we can/should CP because I could not repro on the previous stable. I wonder if the issue there is specific to iOS?

I thought --observatory-port was supposed to be deprecated.
Is the issue that --observatory-port should now map to --dds-port instead of --host-vmservice-port?  The --dds-port is used to serve the observatory UI and is probably what users intend to control if they specify an --observatory-port.
@bkonyi

ultimately the plumbing is the same, so either --observatory-port or --host-vmservice-port will work.
Fixing for real needs some more thought, but we can't ship a stable with this broken

@bkonyi can you confirm that switching observatory port to dds port is a safe change? If so, we should probably remove the --dds-port option instead of disabling it

No, we need to be able to specify the VM service and DDS ports separately to handle remote workflows. --observatory-port should continue to function the way it always has. See my follow up on the issue.


pyenv which hint

Description
See https://github.com/MolSSI/QCEngine/issues/292 pyenv returns a path from shutil.which that, if its an unactivated conda env under pyenv management, isn't actually ready to run, so qcelemental.which is deceptive. Apart from checking err better on the qcengine side, this PR better handles the situation.
Changelog description

Status

[x] Code base linted
[x] Ready to go

@coltonbh, if you have any suggestions for special handling in which_import, please let me know.

Sure! The case you're handling is essentially that someone is using pyenv, which is pretty industry standard (at least outside academia) for installing all your python interpreters (i.e., python 3.10.8, 3.11.2, some miniconda install or anaconda install).
If you run which psi4 from the command line and you've used a pyenv installed miniconda/anaconda to install psi4 (or any other executable), you'll see the following result. which will return the path to the executable, but when you try to run that executable you are given the following error by pyenv, essentially pyenv knows the executable is installed somewhere in one of your conda envs but you need to run conda activate ... first.
~ ❯ which psi4
/home/cbh/.pyenv/shims/psi4
~ ❯ /home/cbh/.pyenv/shims/psi4
pyenv: psi4: command not found

The `psi4' command exists in these Python versions:
  miniconda3-4.7.12/envs/psi4
  miniconda3-4.7.12/envs/psi4-test
  miniconda3-4.7.12/envs/psi4v1.6

Note: See 'pyenv help global' for tips on allowing both
      python2 and python3 to be found.

This code covers this case and provides a notification to end users. Though now that I'm looking at it I think the {path.split('/')[-1] line will only be correct if your environment is named the same as the executable. So you could just say `f"Please activate a conda environment that contains {program}."
@lru_cache  # Improves perf of tests when repeatedly called
def prog_available(program: str) -> bool:
    """Check if a program is available on the system.

    Args:
        program: The program to check.

    Returns:
        True if the program is available, False otherwise.
    """
    path = shutil.which(program)
    if not path:
        return False
    # Perform secondary checks
    if ".pyenv/shims" in path:
        # Executable is in non activated pyenv environment; often a conda env
        print(
            f"Program {program} is in a pyenv shim. It may become available if you "
            f"run 'conda activate {path.split('/')[-1]}'"
        )
        return False
    return True

Any other questions lemme know :)

Thanks for the background -- I've adapted the message accordingly. I think this takes care of qcel.which based on shutil.which.
One thing I was curious about is if you had run into any pyenv curiosities with qcel.which_import based on importlib.util.find_spec such that we need to adapt it, too.

None that I know right off hand. But the qcel import system was a little complex so that's part of why I have some of my own checkers lol ;P I couldn't always follow the plot fully.

Thanks, gtk.
Yeah, sometimes one wants path/None, sometimes path/error, sometimes T/F. And it was more compact to complicate the qcel routines and standardize messages there than to repeat across all the qcng harnesses. I probably ought to add a table like the below to the which/which_import docstring -- I couldn't have written it from memory. The submodule bit doesn't help the which_import clarity :-)
+-------------+-------------+---------------------------------+---------------------------+
| return_bool | raise_error | action if found                 | action if not found       |
+-------------+-------------+---------------------------------+---------------------------+
| F (default) | F (default) | return <path to command> string | return None               |
+-------------+-------------+---------------------------------+---------------------------+
| T           | F (default) | return True                     | return False              |
+-------------+-------------+---------------------------------+---------------------------+
| F (default) | T           | return <path to command> string | raise ModuleNotFoundError |
+-------------+-------------+---------------------------------+---------------------------+
| T           | T           | return True                     | raise ModuleNotFoundError |
+-------------+-------------+---------------------------------+---------------------------+


Overriding monitoring configuration at runtime table has incorrect app setting names

Overriding monitoring configuration at runtime
The table containing values for overriding host.json logging settings is incorrect. The table states that:

host.json path
overriding variable name

logging.logLevel.Function.Function1
AzureFunctionsJobHost__logging__logLevel__Function1

logging.logLevel.Function.Function1.User
AzureFunctionsJobHost__logging__logLevel__Function1.User

But the working ones are:

host.json path
overriding variable name

logging.logLevel.Function.Function1
AzureFunctionsJobHost__logging__logLevel__Function.Function1

logging.logLevel.Function.Function1.User
AzureFunctionsJobHost__logging__logLevel__Function.Function1.User

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

ID: 86aff194-f810-3c21-e322-cdda05dfc734
Version Independent ID: 0864707c-97a7-1166-1bd4-ef9ea212c64e
Content: Configure monitoring for Azure Functions
Content Source: articles/azure-functions/configure-monitoring.md
Service: azure-functions
GitHub Login: @ggailey777
Microsoft Alias: glenga

Thank you for your feedback! We have assigned this issue to the author to review further and take the next course of action.

the overriding variable name should replace dot . with double underscore __. The example with powershell cli command is correct, but the table is wrong. the table in this issue is also a bit wrong - there should be double unserscore between Function1 and User: AzureFunctionsJobHost__logging__logLevel__Function__Function1__User
This settings would work with App Service where by default dots are replaced with double underscore when translated to environment variables but in scenarios where you run on AKS or Container Apps - you need to use double underscores.

@Ikriva I believe that @miqm is correct. The app setting names need to be all double underscored instead of dots.


Clear the dialogs

The previous input text in the "Add Image" dialog should be cleared when shown to the user:

Maybe you could replace "Add image" by "Create environnement"?
On the left of the first input field, you could add "URL of the repository".
On the left of the second input field, you could add "Reference (commit)" with a default and a placeholder set to "master"


Autotune patch release to master (oref0 0.5.5 patch release)

There are some significant improvement to autotune that are currently in the dev branch, that make a big difference to tackle the previously-known issues around upward bias on ISF and carb ratio. Dev (0.6.0) is a ways out from release, so wanting to patch so one-off users of autotune and everyone on master can utilize the autotune improvements sooner.

Tested successfully on my Mac, a rig, and a Ubuntu box.

To test:
cd ~/src/oref0/ && git fetch && git checkout autotune-prep && git pull
npm run global-install
oref0-autotune --dir=~/myopenaps --ns-host=https://yournightscout.herokuapp.com

@scottleibrand minor correction on branch name
cd ~/src/oref0/ && git fetch && git checkout autotune-patch && git pull
npm run global-install
oref0-autotune --dir=~/myopenaps --ns-host=https://yournightscout.herokuapp.com

Good catch @Kdisimone  :) Fixed.

was this supposed to also help Phase C, mac users doing on one-off on their local computers?
if so, i ran into an error using it that way:
Kathryns-iMac:settings iMac4K$ oref0-autotune --dir=~/myopenaps --ns-host=https://testopenaps.herokuapp.com
Warning: API_SECRET is not set when calling oref0-autotune.sh
Running oref0-autotune --dir=/Users/iMac4K/myopenaps --ns-host=https://testopenaps.herokuapp.com --start-date=2017-10-05 --end-date=2017-10-05
/usr/local/bin/oref0-autotune: line 156: json: command not found
Grabbing NIGHTSCOUT treatments.json and entries/sgv.json for date range...
Query: https://testopenaps.herokuapp.com find%5Bdate%5D%5B%24gte%5D=1507186800000&find%5Bdate%5D%5B%24lte%5D=1507273200000&count=1000
/usr/local/bin/ns-get: line 60: json: command not found
Couldn't download ns-entries.2017-10-05.json

That's a different issue I keep asking people to PR in a fix for, but no one seems willing to do.  (I could do it, but it's simple enough there's no reason someone else shouldn't.)  We just need to replace all instances of the json command with jq . and then test that fixes it without breaking anything.

I'll do that

dev branch, yes?

Yeah, best to start off of autotune-patch, and then we'll merge that back into dev afterward.

BTW, works great!  👍

Is this intended to work for one off on a VM?  If so, I haven't been able to get it to work on google VM.  Because there's no /src/oref0/ directory, the first command fails.

What I did to fix that problem was use SCP to copy the SRC folder from my rig to my mac
Reference link   https://superuser.com/questions/449348/copy-a-whole-folder-from-a-remote-computer

On Oct 7, 2017 at 10:05 AM,  <Brian Rabinovitz (mailto:notifications@github.com)>  wrote:
Is this intended to work for one off on a VM? If so, I haven't been able to get it to work on google VM. Because there's no /src/oref0/ directory, the first command fails.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly,  view it on GitHub (https://github.com/openaps/oref0/pull/693#issuecomment-334941373), or   mute the thread (https://github.com/notifications/unsubscribe-auth/ANbN2jET0JVg2PREMcA4TrRidfBa9byvks5sp5MtgaJpZM4PvlTo).

The lack of src/oref0 is if you follow the above solely for testing and don't already have a repo in place (which you'll get by following the Phase C one-off instructions). So that won't be an issue once this gets merged.


Side-loading comments

Is it possible with the gem/API to side-load comments when retrieving a ticket or set of tickets?
Our end-users submit comments on our site, which we preserve there and send to Zendesk through the API.  But our customer service staff works directly through the Zendesk site, so we need to periodically update our local cached copies of the Ticket data and add in any comments that were made on the Zendesk side for display to the end-users.
Is there a way to do that if side-loading the comments isn't an option?

This is a problem that when list all tickets, how to find the last audit name??
we can use include last_audits to get last audit id ( author_id ), but we can`t get the author name once time


Cannot configure cmake project. Exited with code: 1

When generating my project files, ue4-cmake says it can't configure the cmake project.
I have CMakeTarget.add(Target, this, "libname", Path.Combine(ModuleDirectory, "../ThirdParty/libname"))
where "../ThirdPary/libname" is the directory to the cmake library's source.
The source is pulled from FastNoise2 with submodules included
I have added the CMakeLists.txt to the same directory as my project's build.cs
P.S. I'm not sure how credible I am when I say I get this error because I am particularly new cmake

I will try and see if I can get a sample project working with FastNoise2 (built this for another lib so haven't tested with FastNoise2 yet). What version of UE are you using (haven't test with latest or 5 yet)?

There was an issue with FastNoise2, the NoiseTool needs to be turned off as it requires a few libs that have to be manually installed (no support in Hunter). Luckily I had already worked on adding cmake args to build script so just had to update the project here with those changes (see latest push https://github.com/caseymcc/UE4CMake/commit/2647ac41a8b28beffba01649088f6accc5438781). Also added https://github.com/caseymcc/UE4_FastNoise2 as an example.
Let me know if that works out for you.

So I updated the code in build.cs (added new CMakeTarget code and added cmake args) and updated the CMakeLists.txt file in the same directory where my build.cs is. I still get the error where it says cannot configure cmake project. Exited with code: 1. I tried this on both UE 4.26.2 and UE 4.25.4.
My visual studio version is VS 2017 15.9.23 if that helps
I'm also wondering what is in "../Deps/FastNoise2" in the FastNoise2 Example project because I'm not exactly sure if the library source I'm putting there is correct (as I mentioned I had cloned FastNoise2 with submodules included).

The example uses FastNoise2 as a git submodule, meaning that when you git it you should use
git clone --recurse-submodules https://github.com/caseymcc/UE4_FastNoise2.git

or
git clone https://github.com/caseymcc/UE4_FastNoise2.git
git submodule update --init --recursive

you do not need to copy the files into it.
I tested it with UE 4.25.4 using VS2019 (although the VS version I would not think matters).

Git does not seem to be creating the submodules for me when I use either command, so there is some issue on my side it seems. I've been trying to look into it.

Just tried it myself, looks like something is wrong with the repo. Will check it out later today.

Sorry been a while since I messed with this but recently started working with UE4 again so I had to make some changes to get this working better. I was able to get it working as a plugin now, seems a little hacky so some things may break just let me know if you hit something and when I get time I will look into it.
I update the FastNoise2 example (https://github.com/caseymcc/UE4_FastNoise2) and it should work fine now.

Thanks for continuing to work on it!
I want to make sure I'm doing this right: I added the CMakeTarget plugin to my project, update my .uproject file to enable the CMakeTarget plugin.
In my project's build.cs, I added the following:
CMakeTarget.add(Target, this, "FastNoise2", Path.Combine(this.ModuleDirectory, "../Dependencies/FastNoise2"), "-DFASTNOISE2_NOISETOOL=OFF");
where Dependecies/FastNoise2 is the repo I pulled from https://github.com/Auburn/FastNoise2 with submodules included.
So when I try to run my project, I get the error:
"The source directory C:/Users/rgnie/Documents/Unreal Projects/voxel/Source/voxel/Projects/voxel/Source/ThirdParty/generated/FastNoise2/toolchain.cmake does not exist."
I believe the correct directory would be:
C:/Users/rgnie/Documents/Unreal Projects/voxel/Source/ThirdParty/generated/FastNoise2/toolchain.cmake
So if this error is not a result of me following instructions incorrectly it can be inferred that there is an error in UE4CMake where it can't locate the ThirdParty folder correctly.

The directory you are reporting for sure looks wrong, something is getting duplicated. In the output there should have been a line like this
m_modulePath: {some path}

curious what that says. It maybe that you typed the add command wrong once and it wrote the files incorrectly the first time. It may not be updating the build files after that (will need to look into that) if that is the case you just need to delete the ThirdParty/generated directory and modify you project's .Build.cs (add some spaces or blank lines) to force the rebuild.

also I am generally on discord when I am on my machine. setup a channel for this project so you might catch me live there https://discord.gg/4AYSjfEByn. I will add it to the readme as well.

Fixed, discussion on discord. Issue was caused by a space in the project path. Several of the cmake calls had to have "'s added to fix it.