[BUG] After cold reboot in a period of time or restart node machine, all vms stuck in "Starting" state

Describe the bug

With Harvester already have some virtual machines running, power off the node machine, wait a period of time then power on the machine.

Checking all the vms stuck in the Starting state

Check the events of vm, it stuck in the action with message

Pod virt-launcher-vm1-nginx-ltmzp
Container image "registry.suse.com/suse/sles/15.5/virt-launcher:1.1.0-1505<IP_ADDRESS>" already present on machine

When we restart the node machine, we also have the chance to encounter the same result

To Reproduce
Steps to reproduce the behavior:

Create a vlan 1 network on management interface
Create two VMs on vlan1 and mgmt network with nginx service installed

#cloud-config
package_update: true
packages:
  - qemu-guest-agent
  - nginx
runcmd:
  - - systemctl
    - enable
    - --now
    - qemu-guest-agent.service
    - systemctl start nginx
    - systemctl enable nginx
password: 123456
chpasswd: { expire: false }
ssh_pwauth: True

Set vm labels to each VM
Create two IP pools one for default and another for harvester-public namespace
Create some load balancer set on the above IP pools and bind to the
Power off the Harvester node VM
Power on the Harvester node VM again after 1 hour
Check the VM status and events

Expected behavior

Support bundle

supportbundle_e9d19d9f-3065-416e-b76d-1dcd5bf5d828_2024-03-01T10-31-24Z.zip
Environment

Harvester ISO version: v1.3.0-rc3
Underlying Infrastructure (e.g. Baremetal with Dell PowerEdge R630): Single node on local kvm machine

Additional context
This issue was first found in #4033 but in Harvester v1.3.0-rc release we can still hit the issue.
And since the virtual machine event display different message.
After discussion, we create a separate issue to track this behavior.

@TachunLin  it's a normal event on any VM start.

Check the events of vm, it stuck in the action with message
Pod virt-launcher-vm1-nginx-ltmzp
Container image "registry.suse.com/suse/sles/15.5/virt-launcher:1.1.0-1505<IP_ADDRESS>" already present on machine

@w13915984028 Can you help verify if this one is duplicated with https://github.com/harvester/harvester/issues/5109 ?

From the support bundle, there is such keywords not a device node in file yamls/namespaced/default/v1/pods.yaml, this is exact the root cause identified on #5109 .
The #4033 looks to be fixed in new version.
    name: virt-launcher-vm1-nginx-ltmzp
    namespace: default
...
    containerStatuses:
    - image: registry.suse.com/suse/sles/15.5/virt-launcher:1.1.0-1505<IP_ADDRESS>
      imageID: "null"
      lastState: {}
      name: compute
      ready: false
      restartCount: 0
      started: false
      state:
        waiting:
          message: 'failed to generate container "f5160682ae54ffed74327b28f3b6c08ae181dc146a2ed7f4927a39dabb2609f5"
            spec: failed to generate spec: not a device node'
          reason: CreateContainerError

This issue was found during the verification on issue #4033 on v1.3.0-rc3.
Since this issue share the root cause with issue #5109.
Thus we close this issue and track in #5109 afterward.


[Bug]: Input field validation is missing for display name

Is there an existing issue for this?

[X] I have searched the existing issues

Description
There is no input field validation for display name. (Note: Add validations in backend as well)

Steps To Reproduce

Got to profile page from top right menu
Edit the display name

Public Sample App
No response
Environment
Production
Issue video log
No response
Version
Cloud

@ginilpg I want to contribute in this issue can you assign me ?

Hey @Lovakush thanks for your interest.
I recommend you go through issues that are tagged Good first issue.
We might do some backend changes for this, it is yet to be finalised.

We plan to add validations on client side that allows either a name without special characters (e.g. User name) or a valid email ID (e.g. user-test@domain.com).
Question:

[ ] Do we need backend migrations to update existing display names which have an error? (We can default to email ID)

Alternate approach suggested:

Identify invalid characters and replace them with _ or   (space).
Don't overwrite other language characters.

Working as expected verified it on release.


PackageId:CPython39.Exe.x64;PackageAction:DownloadPackage;ReturnCode:0x80070193;

This issue has been moved from a ticket on Developer Community.

[regression]
Describe your issue here
===DO NOT EDIT BELOW THIS LINE===
PackageId:CPython39.Exe.x64;PackageAction:DownloadPackage;ReturnCode:0x80070193;

Original Comments
Feedback Bot on 9/20/2022, 06:53 PM:
(private comment, text removed)

Original Solutions
(no solutions)

Hi there, could you please check if there's a firewall or proxy server blocking you from accessing the download link? If so, here's a guide that might be helpful - install and use Visual Studio behind a firewall or proxy server. Thank you!

Going to close this out. If the issue still persists, please reopen with the information requested. Thanks.😊


Suport for different chat format

Hi, thank you for your great work.
I would like to know if there any plan supporting different chat format like Vicuna, ChatML ?
A reference to chat format support in llama-cpp-python

For chat format, since I don't have too much time to track all common llm models currently, maybe at least I would give user a way to customize the roles.

I've created a pr for this.

@pdylanross wow, thanks for your contribution, I'll review it when I have time today

Fixed in #26


document makeWrapper

There is no documentation whatsoever about one of the most basic utilities in nixpkgs.
There is exactly one very short source code comment about usage.

I very much endorse such efforts :)

This was done by @Profpatsch in dd58d24fa612df73264bb69f82517e1c2bc6999a

Watch me roll (aka not close my own issues after I implement stuff months later) :octocat:

You did the important part of the job :)


TestPacketContentAssemblerFlowsAndFiles not executable in StreamsStudio

The sample TestPacketContentAssemblerFlowsAndFiles cannot be executed successfully in StreamsStudio. During execution a signal SIGSEGV, Segmentation fault, occurs and the resulting output files 'debug.*' are empty. Attached is the error output.
Result_Studio__standalone_execution_V3.0.0.TXT
The problem is that the subdirectories of the data directory do not yet exist when the custom operators want to write into it.

I think this exception is caused by this code:
    mutable int32 error = 0;
    uint64 handle = fopen(filename, filemode, error);
    assert(error==0, "Sorry, could not open output file '" + filename + "', " + strerror(error));
    fwriteString(string, handle, error);
    assert(error==0, "Sorry, could not write output file '" + filename + "', " + strerror(error));

The assert() function following fopen() should catch this error if you compile without SPL optimization. If you compile with SPL optimization, the assert() function is ignored. I think that was a poor design choice, and I'd be happy to see it changed.
However, I think we can all agree that fwriteString() should return an error code in this situation instead of throwing an uncaught exception. Please open a defect against the runtime SPL library.
It might also be worth asking the Studio folks to create a 'data' directory when running an application that does not have one, for backwards compatibility.

The sample SPL code needs to fixed to create the required sub directory in SPL instead of rely that the directory exists or to create it in test-scripts only.
() as FlowDataStore = Custom(FlowDataStream as In) {
logic state: {
mutable boolean res=createDir(dataDirectory() + "/debug.TestPacketContentAssemblerFlowsAndFiles");
In Functions.spl:
/**

It creates a directory by path name
@param path The directory path
@return true if created else false
*/
public stateful boolean createDir(rstring path) {
mutable boolean result = true;
mutable int32 errorCode = 0;
spl.file::mkdir(path, 999u, errorCode);
if (errorCode != 0) {
result = false;
}
return result;
}

@ejpring Please review the pull request above

I don't think this toolkit's sample applications should cover up a bug in the SPL::File::fwriteString() function. The sample applications should log an error if fwriteString() fails, not throw an uncaught addressing exception. Let's get the bug fixed.

I agree that there might be a bug in fwriteString(), that could be fixed.
Nevertheless the sample is currently very user-unfriendly for usage in StreamsStudio.
It is not documented that the user has to create a directory manually. In current and older Streams releases the user would never get a proper hint because the signal is raised.
In the test script you create a directory that is required by an operator in the sample application and you cover up the bug with this workaround.
The proper way would be that the sample application works without any manual directory creation by the user since it is possible to create directories in Streams operators with spl.file::mkdir method.

I agree that the product's decision to eliminate the 'data' directory is not user-friendly and not backwards-compatible, but was the decision.
I also agree that this toolkit's documentation should tell Studio users to create a 'data' directory manually before running the sample applications. If they don't, the sample applications should log an error message that says the directory does not exist. The sample applications should not create a 'data' directory.
In any case, the uncaught address exception is a bug and it needs to be fixed. It could be fixed by catching the exception in fwriteString() and returning an error code. Or, it could be fixed in fopen() by creating the file's directory if it does not exist. That would be a good discussion to have with the product developers. Please open a defect against the SPL runtime library to start that discussion.

Studio creates the data directory during "build job".
The code changes proposed are solving the problem that the missing sub directory ("debug.TestPacketContentAssemblerFlowsAndFiles") is created automatically and the sample application would work in StreamsStudio and test script in the same way.

Please pull today's changes from the fork at https://github.com/ejpring/streamsx.network and retest ...

@ejpring I have seen your commits in your fork. The sample TestPacketContentAssemblerFlowsAndFiles.spl works without the need of the additional sub directory. All files are written into data directory now. This is not very beautiful but solves the problem.
You missed to change LivePacketContentAssemblerFlowsAndFiles.spl and livePacketContentAssemblerFlowsAndFiles.sh.

Why not creating the sub directory of the data directory in the way Mark proposed? In this way the output files would be clearly arranged and assigned to a sample (as they were before), and it makes it easier to check what output files were generated.
If you put the debug.flow* files into the data directory where also the output files of the other samples are written, it is hard to separate them.
By the way: Would it not be useful to distinguish the generated output files of the two custom operators by name?
() as FlowDataStore = Custom(FlowDataStream as In) {
...
onTuple In: {
rstring filename = dataDirectory() + "/debug.TestPacketContentAssemblerFlowsAndFiles/debug.flow_" + ...;
() as FileChunkStore = Custom(FileChunkStream as In) {
logic onTuple In: {
rstring filename = dataDirectory() + "/debug.TestPacketContentAssemblerFlowsAndFiles/debug.file_" +  ...;

In the samples, the filenames for reassembled files include both flow and file identifiers to show which flows the files were reassembled from. Their purpose is to illustrate the PacketContentAssembler operator. The Custom operators are just simple examples of how its data and metadata might be used.

Yes, I see. It does not make sense when I see the whole file name.
And what about my first question:
Why not creating the sub directory of the data directory in the way Mark proposed? In this way the output files would be clearly arranged and assigned to a sample (as they were before), and it makes it easier to check what output files were generated.
If you put the debug.flow* files into the data directory where also the output files of the other samples are written, it is hard to separate them.

Thanks for verifying the changes to the PacketContentAssembler samples. No one has ever accused the samples of being beautiful. If they give customers a head start on building real applications, they've done their job.


Multi-scene export fails w "export_nla_strips=False" and no anim in a scene or apply modifiers active.

Describe the bug
I cannot use export_nla_strips=False when I have a blend file with multiple scenes and one of the scenes has no action associated with any of it's objects.
To Reproduce
Steps to reproduce the behavior:
load the attached blend file and run the script in the text editor.  there are 4 scenes in the file.  the first has no animation.  the gltf gather action script is failing, likely because it wasn't expecting multiple scenes.
note the line comment at:
export_nla_strips=False  # <-- Set False will crash or produce duplicate actions
you can also get it to happen in the GUI if you try and export from a scene  and uncheck "Group by NLA Track" (same bool)
Expected behavior
I expect to be able to export all scenes and have only action per .glb file.
if no animated elements exist for one of the scenes, I expect it to still export without animation, or create an empy action animation.  I do not expect it to crash.   I'm writing a hack workaround to save a single keyframe in each scene before export to avoid this error.  Be good if it were fixed properly given the awesomeness of GLTF and its likely ubiquity.
.blend file/ .gltf
gltf_crash.zip
Version

OS: Windows 10
Blender Version 2.90.0 alpha

Additional context
I also note that I get the same error with apply modifiers.  (see comment in text text editor of the blend file to make it happen)
note, if you animate anything in the cube scene (the fist scene, without any animation), the scenes will export and the error will not happen.  however, if you inspect in the exported GLTF files, there will be 4 duplicate actions all named "action" instead of just the one action as expected.

The error in case you want to jump right to line 506.
RuntimeError: Error: Traceback (most recent call last):
  File "C:\Program Files\Blender Foundation\blender-2.90.0-c7329da14b22-windows64\2.90\scripts\addons\io_scene_gltf2\__init__.py", line 506, in execute
    return gltf2_blender_export.save(context, export_settings)
  File "C:\Program Files\Blender Foundation\blender-2.90.0-c7329da14b22-windows64\2.90\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_export.py", line 42, in save
    json, buffer = __export(export_settings)
  File "C:\Program Files\Blender Foundation\blender-2.90.0-c7329da14b22-windows64\2.90\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_export.py", line 55, in __export
    __gather_gltf(exporter, export_settings)
  File "C:\Program Files\Blender Foundation\blender-2.90.0-c7329da14b22-windows64\2.90\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_export.py", line 64, in __gather_gltf
    active_scene_idx, scenes, animations = gltf2_blender_gather.gather_gltf2(export_settings)
  File "C:\Program Files\Blender Foundation\blender-2.90.0-c7329da14b22-windows64\2.90\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_gather.py", line 39, in gather_gltf2
    animations += __gather_animations(blender_scene, export_settings)
  File "C:\Program Files\Blender Foundation\blender-2.90.0-c7329da14b22-windows64\2.90\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_gather.py", line 100, in __gather_animations
    animations[merged_tracks[merged_anim_track][0]].name = merged_anim_track
IndexError: list index out of range

location: C:\Program Files\Blender Foundation\blender-2.90.0-c7329da14b22-windows64\2.90\scripts\modules\bpy\ops.py:201

Error: Python script failed, check the message in the system console

in case it's usefull, whoever fixes this might need this to manage scenes and collections:
            # turn off all collections in all scenes.
            for scene in bpy.data.scenes:
                bpy.context.window.scene = scene
                scene_collections = scene.collection.children
                for col in scene_collections:
                    col_name = col.name
                    bpy.context.view_layer.layer_collection.children[col_name].exclude = True

            # turn on this scene export collection for export.
            for scene in bpy.data.scenes:
                bpy.context.window.scene = scene
                scene_collections = scene.collection.children
                for col in scene_collections:
                    col_name = col.name
                    if "Export" in col_name:
                        bpy.context.view_layer.layer_collection.children[col_name].exclude = False

the oddest part about this bug is if I delete all the other scenes from the blender file, then purge all orphan data,  and then export with the exact same settings, the exported glb file loads fine....

interesting.   it looks like every scene is writing out in the GLTF file regardless if it's the active scene.  I think might explain the chaos I'm seeing when I load the glb files.   perhaps an "export only active scene" option might be worth considering.

here's the ascii gltf comparison between the exact same scene exported once from a blend file with only one scene present in the file.  and once exported from a blend file with multiple scenes present.   what's interesting is that both files look identical in https://gltf-viewer.donmccurdy.com/ and https://threejs.org/editor/, but the multi scene exported file will not load in the three GLTFLoader.
single_vs_multi_scene_export.zip

It's not strictly related to the Blender IO, but there has been some discussion about "Multiple Scenes" in general at https://github.com/KhronosGroup/glTF-Sample-Models/pull/242#issuecomment-564769202 , also pointing to https://github.com/KhronosGroup/glTF/issues/1542 (I'm just mentioning this to avoid putting too much effort into something that might become obsolete at some point, but I'm not up to date with the latest discussions here, admittedly...)

Well,
The crash is not linked to multiscene...
Open default cube, export gltf unchecking "group by NLA" --> crash
A check is missing...


Make Event Page

Keep these in mind while making it:

refer to the design
make the upcoming events carousel as an independent component
make the past event cards an independent component
no need to make the drop-down menu

#60 Fixes this issue


How do I run SchemaChange with no deployment but with updating the change_history table ?

** What are you trying to accomplish? **
I'm using the SchemaChange as part of our Azure DevOps pipeline. As we already have many DB objects deployed, I'm looking for the way to load the CHANGE_HISTORY table for the first time without deploying (compiling) the objects in the DB.
** What options have you tried so far ? **
I've tried to run the SchemaChange in Dry Mode and expected to get exactly what I need, means updating the CHANGE_HISTORY table without compiling the DB objects themselves. In real, Dry Mode doesn't compile the objects (which is great) but doesn't update the CHANGE_HISTORY table too (which is bad for me).
So is there any way to run the SchemaChange in the mode in need? Any additional flag I missed?
Thanks.

I have a similar problem.  We have a list of SQL scripts that have already been executed in our development environment and we want to start using schema change, but we want to record the current scripts in the CHANGE_HISTORY table without executing them.

Hi,
We ran into similar use case and followed these steps, using some python scripts.

Generate DDL's for all the scripts using get_ddl
Save the scripts into folders with pre-defined naming convention. We named files in such a way that they are executed in the order we need.
Had another python script to scan all the files and generate the checksum (we used the function used in schemachange to make sure the same checksum is generated)
hashlib.sha224(content.encode('utf-8')).hexdigest()

Insert the entries generated from the above step into the schema_change_history table
now apply schema change with dry-run: false and you should not see script changes getting applied
Thanks

Thanks. That is exactly what I did ;-)Best Regards,Zeev RoytmanWhatsApp | Email | Phone | Facebook | Instagram | GuruShotsOn 13 Apr 2024, at 2:27, Mohan Kotha @.***> wrote:
Hi,
We ran into similar use case and followed these steps, using some python scripts.
Generate DDL's for all the scripts using get_ddl
Save the scripts into folders with pre-defined naming convention. We named files in such a way that they are executed in the order we need.
Had another python script to scan all the files and generate the checksum (we used the function used in schemachange to make sure the same checksum is generated)
hashlib.sha224(content.encode('utf-8')).hexdigest()
Insert the entries generated from the above step into the schema_change_history table
now apply schema change with dry-run: false and you should not see script changes getting applied
Thanks
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you authored the thread.Message ID: @.***>


Plain text feedback emails have HTML escape codes in them

Rails does not appear to honour the use of plain text email templates and insists on escaping things like quote marks into HTML codes which are then transmitted in the email.
Maybe switch to HTML email templates?

fixed by using HTML email feedback instead


Release 3.5.1 drops IE11 support

Looks like one of the changes introduced in version 3.5.1 added a use of Array.from: https://github.com/snabbdom/snabbdom/commit/230aa23a694726921c405c4b353e8cb6968483bb#diff-b06da8b5eaf15ddfe5341deaeef13cb9c94546db8b0bd927dd358142aa4fc3c7R122
which is not supported on IE11 according to caniuse (https://caniuse.com/mdn-javascript_builtins_array_from).
I don't think there's any published documentation on what browsers are supported by snabbdom, but I'm fairly sure that until this change snabbdom worked out of the box on IE11. If the intention is not to support older browsers in future that's fine, and I can look into polyfilling it for our use case, but it would be good to know if this was an intentional choice or an oversight.

It was not an international choice, but IE11 is EOL, so I do not want to support it either. So for all intents and purposes, no IE is not supported any more

Okay, thanks for your reply!


sokol_gfx.h: Cleanup unbound resource slot code...

The different backends currently behave differently for unbound resources (whether the bindings are cleared or not). This must be cleaned up with the following rules:

When calling sg_apply_binds(), clear unbound bind slots, but with a state cache inbetween (so no functions are called when not necessary). This is happening in the D3D11 backend, but not in Metal and GL (PS: does Metal have a "batch-binding" function like D3D11?)
make sure that the bindings are also cleared in sg_reset_state_cache()
in sg_commit(), call sg_reset_state_cache()

PS: also be extra careful the temporary binding in the GL resource creation calls... should we actually allow resource creation calls inside passes? Probably yes, but then the bindings either need to remain untouched or restored).

...PPS: don't generally call reset-state-cache in sg_commit(), that's quite overkill, instead only clear the resource bindings that are actually set...

...work happens here: https://github.com/floooh/sokol/pull/152

Closing this since #152 is now merged.


Issue with StreamingResponse Media Type multipart/x-mixed-replace

I seem to have missed a detail in defining the correct response type in the code below and I may require some assistance. The StreamingResponse is utilizing a multipart/x-mixed-replace media type and images are bmp,
could make them also be jpg, though.
I am receiving an error: "Unrecognized response type; displaying content as text."
Any suggestions welcome. Thanks.
OpenAPI v3.0.2
Firefox v.111.0.1
on Ubuntu 18
@app.get("/stream/start",
         tags=["Pointing Camera Image"],
         name="Start streaming bmp frames\nNote: exposure times must not be <50 ms",
         description="Set all required features beforehand",
         responses={
             200: {
                 'content': {'multipart/x-mixed-replace':
                                 {'schema': {'type': 'string',
                                             'format': 'binary',
                                             'properties': {'profileImage': {}}
                                             },
                                  'encoding': {'profileImage':
                                                   {'type': 'string',
                                                    'contentMediaType': 'image/bmp',
                                                    }
                                               }
                                  }
                             }
             }
         },
         )
async def stream_start(
        cameraid: CameraEnum = Query(description="Camera ID"),
):
    def queue_fetch(t: BackgroundTasks) -> Iterable:
        while not t.is_stopped():
            try:
                frame = t.queue.get(block=True, timeout=30.)  # after timeout releases the screen
                frame.convert_pixel_format(PixelFormat.Mono8)
                buffer = cv2.imencode('.bmp', frame.as_opencv_image())[1]
                yield (b'--frame\r\n' b'Content-Type: image/bmp\r\n\r\n' +
                       bytearray(buffer) +
                       b'\r\n')
            except Empty:
                pass

    t = BackgroundTasks(daemon=True,
                        camera_id=cameraid.value,
                        c=app._cameras[cameraid.value])
    t.name = cameraid.value
    t.start()
    thread_list.append(t)

    return StreamingResponse(content=queue_fetch(t=t),
                             media_type='multipart/x-mixed-replace;boundary=frame',
                             )

Can you share a snippet of the actual generated OpenAPI document for those not familiar with that tool?

I did not utilize the openapi-generator-cli

I didn't say you did :grin: But you have a bunch of annotations like tag, name, and description which look like they are there to generate an OpenAPI document.

Ah yeah, forget about those. My focus is on the response, though, whether it is correct. On the interactive API documentation tool it does not stream bmp images throwing an error: "Unrecognized response type; displaying content as text.". Supposedly it is not even designed to do so. Single images don't show that issue.

What version of OpenAPI does your toolchain spit out?

Is there a spec for multipart/x-mixed-replace other than WHATWG?  WHATWG is useless unless you're writing a browser, and their media type registration template doesn't bother to say what the media type is meant for.

No, sorry, I don't have it.

I don't think there's anything we can do here.  This repository is for the specification, not any tools, and this is about tooling behavior (whatever it is that's raising the "unrecognized media type" error).  I don't see a specification issue in this example.  Tooling support for media types not explicitly discussed in the OAS are at the discretion of tool vendors.


Focus on terminus instead of hide it

Windows 10 x64 Version 2004 Build 19041 Insider Preview - Release
I have few monitors and when I open terminus on one of my monitors but focus on some other program (Google Chrome) on other and I press "Toggle terminal window" hotkey - it hides Terminus instead of just focus it.

Should be fixed by now - please test the latest release.


Checkbox lists in issue body seem to have erroneous spacings

From this issue on one of our projects at Contiamo, there seems to be improper (subjectively speaking) spacing between a checklist item and its children. What further seems a little deceptive is that the very last sub-list item in a nested list is closer to the next top-level list item, while an entire list of sub-list items is further away from its parent. 🤔
Generally, it is my feeling that this could be improved a bit.
I am happy to submit a PR that addresses this if we can agree that we'd like to improve this.
Thoughts?

I see this is a duplicate of #461. Closing in favor of that issue.


[Fastlane.Swift] Restore 'swift' directory if it is deleted before running a lane

G'day folks! Thanks again so much for all the work you do on fastlane! Here's my first ever PR for something in Ruby!
I tried to design and inline with fastlane's style, but I'm happy to modify the flow or usability if anyone can see a better way of achieving this functionality. Thanks again! :)
Checklist

[x] I've run bundle exec rspec from the root directory to see all new and existing tests pass
[x] I've followed the fastlane code style and run bundle exec rubocop -a to ensure the code style is valid
[x] I've read the Contribution Guidelines
[x] I've updated the documentation if necessary.

Motivation and Context
Addresses #18483 in Discussions.
I'm looking at using Fastlane Swift in an iOS project, but I would like to avoid checking in all of the sources and Xcode project files in fastlane/swift into my GitHub repo. So ideally, I'd like to only check-in fastlane/Fastfile.swift and put the rest in .gitignore. Then, whenever I do fresh clone, I can just run fastlane swift init again and have the fastlane/swift folder restored. Or conversely, whenever I get my CI to run an action, it'll restore the swift folder just-in-time then too.
At the moment, Fastlane Swift doesn't properly handle having the swift folder deleted. Running fastlane swift init after deleting it will simply return a message stating there is already a Fastfile.swift file. But when I go to execute a lane after that, it will throw an exception saying it cannot find the FastlaneSwiftRunner.xcodeproj file.
My goal with this PR is to enable the ability of letting Fastlane Swift recover from having the swift folder deleted and automatically restore itself. I think this is valuable in two places:

When running fastlane swift init a second time, when wanting to restore the swift folder, but not run any lanes yet.
When trying to run a lane, and it's discovered the swift folder is missing (eg, if a CI automation tries to run it from scratch).

Description

In setup.rb, when the user starts a new init command and Swift is enabled, I added a check to see if the fastlane/swift folder exists or not. If it doesn't exist, it prints a message saying it's restoring the Swift files, and then restores the Swift files using the same codepath as when creating a new Fastlane Swift project from scratch. When it is done, it continues on with the regular execution, where it will list the available lanes.
In swift_runner_upgrader.rb, I added similar logic above the code that would crash when FastlaneSwiftRunner.xcodeproj couldn't be found. It checks to see if the swift folder is missing and restores it if it is. It then continues regular execution of the lane. I couldn't work out how to call the original method from setup.rb (Admittedly I'm still quite new to Ruby), so I copied the code. If there's a better way to do this, I'm happy to modify as needed.

Testing Steps

Create a new Fastlane Swift project by navigating to a project and running fastlane swift init.
Set up Fastlane for any type of project configuration.
Run one of the sample lanes to confirm lanes regularly run.
Navigate to the fastlane directory and delete the swift folder.
Try and run the same lane again. It should succeed.
Delete swift again.
Try and run fastlane swift init. It should still report the Fastfile existing, but swift is also restored.

@googlebot I signed it!

@googlebot I consent.

@TimOliver This is a great PR! I have never thought about not committing that stuff 😅 I added a commit to reuse some of what was already there (like you mentioned in your description) but what you had originally was pretty 🔥 If you want to review my changes that would be super!

@joshdholtz G'day Josh! Nice to meet you! Oh awesome! I'm so happy to hear I was able to bring something new to the project! Thank you so much! 😁
I just had a look over your changes. That all looks good to me (and far better than the code I wrote.)! If you need me to do anything further to consent to this PR, please let me know.
One thing I was wondering after I submitted this PR is if it would be possible to implement this system, but also be able to support importing third party SPM packages into FastlaneSwiftRunner.xcodeproj after it's restored as well. If you think that's easy to do, let me know and I'll look into that as well. 😁
Thanks again Josh! Have a great evening!

@TimOliver Nice to meet you too! Thanks for the quick response 😊
I’m actually not sure how to integrate SPM into the FastlaneSwiftRunner.xcodeproj 😅 That one might be good to open upa Discussion about and maybe see if we could get some Fastlane.swift expertise from @minuscorp. Jorge is much better at understand this part of fastlane than me 😉 ❤

@joshdholtz Woohoo! Awesome! No worries! I'll start a new Discussion on SPM integration and see what people think.
It was my pleasure Josh! Likewise, thanks again so much for all that you do on fastlane! All the best!

I'll be glad to help in the question you propose once you open the issue or the discussion, don't hesitate in mentioning me, just in case I miss the topic😅.

Hey @minuscorp! Nice to meet you! :D
Great! Thanks so much! I just put a discussion up; I'd love to hear what your thoughts on it are. Thanks again!


Configuration Settings

For issues give the following informations related to your problem:

[x] System Designer version number: (ex: v3.5.1)
[x] System Designer platform: (ex: macOS)
[x] Your OS version: (ex: macOS 10.14)
[x] If use on a phone, please give the model: (ex: iPhone X)
[x] Steps to reproduce the problem

note: if possible, send us the system you used.

Hi, I am using System Designer 3.3.3 on Macbook Air, Mojave 10.14.4 and iPad System Designer 3.3.0 on iPad 12.2.
The Configuration Setting on the System Designer for Macbook and iPad differ.  I can successfully import via the Macbook version but as the iPad version lacks the same Configuration Settings I am unable to successfully import or export.
Can you please assist me if I have missed something or let me know if this is a known issue.

Hi,
if you want to import/export system with the iOS version of System Designer you will need to use the GitHub module. You can also copy the JSON under the Bundle tab when you edit a system (i.e. if you click on a system) with the Advanced mode enabled.
Import has been removed on iOS version in favor of GitHub synchronization, but I can add this feature in a next release if you think it is a must have.

Hi,
The github module is on my macbook but that option does not appear to be on the ipad.  I had already added my github repository and generated password but when I try to access it from the ipad System Designer it says "github not found". I have copied the github url and generated password directly, can you please advise further.

Hi,
did you have more information about the error message (i.e. the complete error message)? By the way, when you have set the Github repository value in the configuration panel, the format you set was like user_name/repository (i.e. not the url to the repository)? I have just tried the iOS version and the GitHub module seems to work. Anyway I will investigate your issue.

Hi,
I am only new to get him and programming but when I went to get help to get the repository link it gave me a link starting with HTTPS. So I had placed that into the system designer settings and I've now changed it and she said and it works. I really appreciate your kind help, thank you very much.


Update tyche contracts

Waiting on an issue with redemption to be fixed. https://discord.com/channels/838651642190495804/900318500365664276/910615019845222440


simplify URI complete

Relates to:

https://github.com/baresip/baresip/pull/2163
https://github.com/baresip/retest/pull/131

Not needed any longer. Also it is not beautiful to have a string comparision to a static string "sip:" in the print function.


Error at 'ionic build android' behind proxy related to #gradlew

Description of the problem:
When running ionic build android inside root folder of a project, build fails when downloading https://services.gradle.org/distributions/gradle-3.3-all.zip with
java.net.ConnectException: Connection refused (Connection refused)

Output of ionic build android
><EMAIL_ADDRESS>ionic:build /Users/oikonomopo/Projects/myNewProject
> ionic-app-scripts build
[18:49:16]  ionic-app-scripts 1.3.7
[18:49:16]  build dev started ...
[18:49:16]  clean started ...
[18:49:16]  clean finished in 75 ms
[18:49:16]  copy started ...
[18:49:16]  transpile started ...
[18:49:28]  transpile finished in 11.72 s
[18:49:28]  preprocess started ...
[18:49:28]  deeplinks started ...
[18:49:28]  deeplinks finished in 16 ms
[18:49:28]  preprocess finished in 18 ms
[18:49:28]  webpack started ...
[18:49:30]  copy finished in 13.82 s
[18:49:55]  webpack finished in 27.83 s
[18:49:56]  sass started ...
[18:49:59]  sass finished in 3.48 s
[18:49:59]  postprocess started ...
[18:49:59]  postprocess finished in 45 ms
[18:49:59]  lint started ...
[18:49:59]  build dev finished in 43.37 s
[18:50:10]  lint finished in 10.96 s
ANDROID_HOME=/Users/oikonomopo/Library/Android/sdk
JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk/Contents/Home
Subproject Path: CordovaLib
Downloading https://services.gradle.org/distributions/gradle-3.3-all.zip
Exception in thread "main"
java.net.ConnectException: Connection refused (Connection refused)
	at java.net.PlainSocketImpl.socketConnect(Native Method)
	...
	at org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.java:107)
	at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:61)

Error: /Users/oikonomopo/Projects/myNewProject/platforms/android/gradlew: Command failed with exit code 1 Error output:
Exception in thread "main" java.net.ConnectException: Connection refused (Connection refused)
	...
	at org.gradle.wrapper.Download.downloadInternal(Download.java:60)
	at org.gradle.wrapper.Download.download(Download.java:45)
	at org.gradle.wrapper.Install$1.call(Install.java:62)
	at org.gradle.wrapper.Install$1.call(Install.java:48)
	at org.gradle.wrapper.ExclusiveFileAccessManager.access(ExclusiveFileAccessManager.java:69)
	at org.gradle.wrapper.Install.createDist(Install.java:48)
	at org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.java:107)
	at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:61)

Expecting behavior
I expect to download https://services.gradle.org/distributions/gradle-3.3-all.zip and finish build!

Steps to reproduce
In a blank tempalte project just run ionic build android

Output of ionic info
******************************************************
Your system information:

Cordova CLI: 7.0.1
Ionic Framework Version: 3.3.0
Ionic CLI Version: 2.2.3
Ionic App Lib Version: 2.2.1
Ionic App Scripts Version: 1.3.7
ios-deploy version: Not installed
ios-sim version: Not installed
OS: macOS Sierra
Node Version: v6.10.3
Xcode version: Xcode 8.3.2 Build version 8E2002
******************************************************

Other information
I am using blank template  for my project. I have created a gradle.properties file in project build dir and in gradle user home based to gradle docs:
systemProp.http.proxyHost=http://i.am.a.proxy.com
systemProp.http.proxyPort=8080
systemProp.https.proxyHost=http://i.am.a.proxy.com
systemProp.https.proxyPort=8080

Hi, we aren't supporting CLI v2 anymore. Also, this is a question for gradle, not Ionic.

Althought it's related to gradle and not to ionic, this was my issue/solution!:
For me the issue was the http prefix! If this is your case, remove http/https prefixes!
I had my gradle.properties like this, and was failing:
systemProp.http.proxyHost=http://squid.proxy.com
systemProp.http.proxyPort=8080
systemProp.https.proxyHost=http://squid.proxy.com
systemProp.https.proxyPort=8080

Proper way to set proxy settings for gradle is:
systemProp.http.proxyHost=squid.proxy.com
systemProp.http.proxyPort=8080
systemProp.https.proxyHost=squid.proxy.com
systemProp.https.proxyPort=8080


pull request for e2e test at 01/04/2017 16:15:16

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


Remove duplicate word in monitoring doc

This change is

http://cockroach-docs-review.s3-website-us-east-1.amazonaws.com/c318617afc97f66af9fb5c906bfaf292bb198a4b/

http://cockroach-docs-review.s3-website-us-east-1.amazonaws.com/d4486d1d3efe8771af1ce1122df20eed6e921b72/


Information Needed For Ticket # 8

I mentioned in ticket #8 that if any user leaves from room then video window remains allocated. On further investigation in code, I saw following two room delegates unused. These are:

(void)room:(ECRoom *)room didUnSubscribeStream:(NSString *)streamId {
// Clean stuff
}

(void)room:(ECRoom *)room didRemovedStreamId:(NSString *)streamId {
}

So my question is: if these two delegates are not handled then how video allocated box is reclaimed for other new video stream rendering?

@ashar02 you are being notified when:

You have successfully unsubscribed a stream that you choose unsubscribe.
A stream in a room you are connected has been removed.

In both cases is up to you to handle resources, free them or do whatever you want.
If you find that un-assign them is not enough or the lib might be leaking memory, please fill a bug for yet or submit a pull request.
Thanks.


Fix \yii\cache\SimpleCache::get() if the parameter to the serializer is set to false

Q
A

Is bugfix?
yes

New feature?
no

Breaks BC?
yes

Tests pass?
no

Fixed issues

Thank you!
But tests are broken for the moment.
So I'm not sure to take these changes now.
Could you take a look if your changes make better to tests. And maybe fix some tests :)

Thank you!


Ajax dataTypes in w2grid and w2form

Hi,
Great library! Congratulation
I need to set dataType of ajaxOptions (in w2grid and w2form) as "json" and not as 'text'. Unless I miss something is it possible to add it in the w2utils.settings object (where unfortunately stands already a dataType property used for ajaxOptions.data : ajax dataType could be set with w2utils.settings.dataType2 temporarily)
Thanks

Overwriting the data type to whatever you need is the way to go.
Example:
w2utils.settings.dataType = 'JSON';

data types are described here: http://w2ui.com/web/docs/1.5/w2utils.settings

please have a look at line 481 in w2form.js
dataType : 'text'
same in w2grid.js

As a remembering, is it possible to add a new dataType in the global settings, eg w2utils.settings.dataType2 ? Thanks.

According to http://stackoverflow.com/questions/2722750/ajax-datatype, dataType = 'json' or dataType = 'text' would only tall jQuery how to treat data response. Since both w2grid and w2form will check if it is text, it will attempt to parse as JSON. Please note that it can be loose JSON format (w/o making each property in double quotes).
I fail to see how it makes difference for server side.

Hi,
on server, when you output like this :
 header('Content-Type: application/json; Charset=UTF-8');   echo json_encode($output);
you need to put dataType as Json as Ajax side.
Does this help?

Can you please explain how is it an issue for you. Try changing it in the source code directly and see if it resolves it? I think it will not as setting it to 'json' will not affect request headers.

Yes, I change the code from 'text' to 'json' and it works in both w2form and w2grid
var ajaxOptions = {
                type     : 'POST',
                url      : url,
                data     : edata.postData,
                headers  : edata.httpHeaders,
                // todo thipages: changed from 'text' to 'json' (27/12/2016)
                dataType : 'json'  // expected data type from server
            };

So my request is to add it as a parameters in w2utils.settings

Is there any one to provide an example, jsfiddle if possible. What is your server side language? Sorry for asking too many questions. I want to avoid unnecessary properties.

clear. php is my server language. Will try to build a fiddle. Thanks

Hi,
I checked again text vs json. It works now. Dont know what happend.
Thanks.
Closed.


Update Jsch to more recent version for better key support

Hello,
Currently it is not possible to use ed25519 keys when using SSH tunneling to machines.
Can't initialize tunnel
  Cannot establish tunnel
    com.jcraft.jsch.JSchException: invalid privatekey: [B@xxxxxxxx

Currently DBeaver uses JSch 0.1.53. The most recent version is 0.1.54.
I will update it but I'm not sure it will resolve your isse (JSch changelog doesn't contain anything about that: http://www.jcraft.com/jsch/ChangeLog).
Good point anyway.

Indeed, sorry I didn't read properly what I found.
There's a 2015 ticket on the JSch bugtracker that states it is planned for the next milestone.


[NoodleMagazine] Unable to extract player path

DO NOT REMOVE OR SKIP THE ISSUE TEMPLATE

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

Checklist

[X] I'm reporting that yt-dlp is broken on a supported site
[X] I've verified that I have updated yt-dlp to nightly or master (update instructions)
[X] I've checked that all provided URLs are playable in a browser with the same IP and same login details
[X] I've checked that all URLs and arguments with special characters are properly quoted or escaped
[X] I've searched known issues and the bugtracker for similar issues including closed ones. DO NOT post duplicates
[X] I've read the guidelines for opening an issue
[X] I've read about sharing account credentials and I'm willing to share it if required

Region
India
Provide a description that is worded well enough to be understood
I tried noodlemagazine with nightly and new latest version it didn't work please kindly solve the issue
Provide verbose output that clearly demonstrates the problem

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

Complete Verbose Output
[debug] Command-line config: ['-v', 'https://noodlemagazine.com/watch/680025502_456239392']
[debug] Encodings: locale cp1252, fs utf-8, pref cp1252, out utf-8, error utf-8, screen utf-8
[debug] yt-dlp version<EMAIL_ADDRESS>from yt-dlp/yt-dlp-nightly-builds [351dc0bc3] (win_exe)
[debug] Python 3.8.10 (CPython AMD64 64bit) - Windows-10-10.0.22621-SP0 (OpenSSL 1.1.1k  25 Mar 2021)
[debug] exe versions: none
[debug] Optional libraries: Cryptodome-3.20.0, brotli-1.1.0, certifi-2024.02.02, curl_cffi-0.5.10, mutagen-1.47.0, requests-2.31.0, sqlite3-3.35.5, urllib3-2.2.1, websockets-12.0
[debug] Proxy map: {}
[debug] Request Handlers: urllib, requests, websockets, curl_cffi
[debug] Loaded 1803 extractors
[NoodleMagazine] Extracting URL: https://noodlemagazine.com/watch/680025502_456239392
[NoodleMagazine] 680025502_456239392: Downloading webpage
ERROR: [NoodleMagazine] 680025502_456239392: Unable to extract player path; please report this issue on  https://github.com/yt-dlp/yt-dlp/issues?q= , filling out the appropriate issue template. Confirm you are on the latest version using  yt-dlp -U
  File "yt_dlp\extractor\common.py", line 734, in extract
  File "yt_dlp\extractor\noodlemagazine.py", line 47, in _real_extract
  File "yt_dlp\extractor\common.py", line 1357, in _html_search_regex
  File "yt_dlp\extractor\common.py", line 1321, in _search_regex

problem solved
#player_path = self._html_search_regex(
#   r'<iframe[^>]+\bid="iplayer"[^>]+\bsrc="([^"]+)"', webpage, 'player path')
#player_iframe = self._download_webpage(
#    build_url(player_path), video_id, 'Downloading iframe page', headers=headers)


If create or replace fails for a view, drop and recreate?

quoted from @mfsjr in #4

I made an unfortunate discovery preparing to retest with v2.6.
Dropping a column from a view cannot be handled using "create or replace", which returns "ERROR: cannot drop columns from view", Postgres docs confirm this, and "alter view" doesn't do it either.
In other words, what "create or replace" actually does is laughably disconnected from the English language.
It appears the concern is breaking other views that could depend on the soon-to-be-dropped column, even if there are none (bad).
Dropping the view and then dispatching "create or replace" works. If there is a dependent view, the drop will fail (good).
So it seems that in order for view migrations to work in both directions, "create or replace view" must first drop the view in question. That will fail with a sensible message if there are dependent views and succeed otherwise.
Would that be possible?

I think what you're asking for is

If create or replace view fails, try drop view and then create view.

That may still fail if the view has dependencies, but it will increase the chances of the migration succeeding.
That strategy could work for both upgrades and downgrades.

Example of what would need to be emitted to have that effect
-- Starting with a 2 column view
create or replace view myview as
select 1 val1, 2 val2;

-- Begin migration to remove "val2" column
do $$

	begin
		/* First try to replace the view,
		which may succeed, even if there
		are dependent views */
		create or replace view myview as
		select 1 val1;

	-- If replacing the view raises an exception
	exception when others then

		/* Drop the existing view
		which will raise another exception
		and fail if there is a dependent view */
		drop view myview;

		-- Recreate the view however you want
		create view myview as
		select 1 val1;

	end;

$$ language 'plpgsql'

My concern is that people may rely migrations to protect them from deleting columns in a view.
If you want that behavior now, you can get it by tweaking the autogenerated migration like this
From this
def downgrade():
    myview = PGView(
        schema='public',
        signature='myview',
        definition='select 1 as val1'
    )

    op.replace_entity(myview)

To this
def downgrade():
    myview = PGView(
        schema='public',
        signature='myview',
        definition='select 1 as val1'
    )

    op.drop_entity(myview)
    op.create_entity(myview)

I'd like to think more about if this is a problem that should be solved at the framework level before committing to anything.
hope that workaround helps in the meantime

It always make sense to think about what will have to be lived with.
Trying create or replace before dropping makes sense.
A configuration switch might be helpful.  Putting this situation in the documentation might also be helpful.
I'm ok regardless, thanks again.

Retested with 0.2.6 and it worked.

Any further thoughts on this?  If the default behavior is to drop the view and give a readable error when the view has dependents, that seems hard to beat.
A configuration option that can modulate that behavior also seems like a maintainable solution.

While I agree that the change would make a migration work by default more frequently, I not comfortable with that change b/c a new user would be surprised by it. They also may rely on certain failure conditions.
To this point I haven't introduced and configuration options & and I'd like to avoid that for as long as possible.
But, here's what you can do:
If you subclass PGView and override the to_sql_statement_create_or_replace to return the sql template I posted above, you'll have your own version with the behavior your want.
from alembic_utils.pg_view import PGView

class SuperPGView(PGView):

    def to_sql_statement_create_or_replace(self) -> str:
        """Generates a SQL "create or replace view" statement"""
        return sql_text(f"""
do $$
	begin
		CREATE OR REPLACE VIEW {self.literal_schema}."{self.signature}" AS {self.definition};

	exception when others then
		DROP VIEW {self.literal_schema}."{self.signature}";

		CREATE VIEW {self.literal_schema}."{self.signature}" AS {self.definition}
	end;
$$ language 'plpgsql'
"""
        )

Heres a link to that method in current source
https://github.com/olirice/alembic_utils/blob/88c39f0440073c5cb57a7d527f8671a44d53b6df/src/alembic_utils/pg_view.py#L48
I haven't tested that code. If you do go that route please post and changes you have to make for others who might end up here.

We’re you able to get that working?

I'm very sorry for the delay in getting back to you, thanks very much for the suggestion.
Yes, that worked on the first try!

Great! closing

It looks like the two approaches both have pros and cons:

Upsert (create or update) can be used for non-breaking changes (where changing column sequence is considering breaking) without requiring dependant views to be dropped and re-created
Force recreate (drop + create) will fail with dependant views regardless of whether the change is breaking or not

The proposal is to create a 3rd approach that combines them:
3. Try to Upsert, falling back to Force create. This will only fail if it is breaking change and the view is a dependency of something else, but this doesn't prevent accidentally making breaking changes
The other approach I could suggest is to pass a flag (e.g. --breaking) to alembic revision --autogenerate which controls whether breaking changes are supported or not. Therefore developers will explicitly need to define the revision as breaking in order to generate a migration that drops and recreates the view. Since this also impacts functions (#7) and presumably other DB objects, a more general approach could be taken.

It looks like the two approaches both have pros and cons:

Upsert (create or update) can be used for non-breaking changes (where changing column sequence is considering breaking) without requiring dependant views to be dropped and re-created
Force recreate (drop + create) will fail with dependant views regardless of whether the change is breaking or not

The proposal is to create a 3rd approach that combines them:
3. Try to Upsert, falling back to Force create. This will only fail if it is breaking change and the view is a dependency of something else, but this doesn't prevent accidentally making breaking changes
The other approach I could suggest is to pass a flag (e.g. --breaking) to alembic revision --autogenerate which controls whether breaking changes are supported or not. Therefore developers will explicitly need to define the revision as breaking in order to generate a migration that drops and recreates the view. Since this also impacts functions (#7) and presumably other DB objects, a more general approach could be taken.

release 0.2.12 is now live on pypi and fails over from create or replace view to drop view ...; create view ....; by default

release 0.2.12 is now live on pypi and fails over from create or replace view to drop view ...; create view ....; by default

release 0.2.12 is now live on pypi and fails over from create or replace view to drop view ...; create view ....; by default

Great! Thank you:-)

release 0.2.12 is now live on pypi and fails over from create or replace view to drop view ...; create view ....; by default

Great! Thank you:-)


[bug]

Is there an existing issue for this?

[X] I have searched the existing issues

RainbowKit Version
0.4.5
wagmi Version
0.6.1
Current Behavior
Some time's after connectiing the wallet i get connector not found issue. Which is in development as well as in production.
Expected Behavior
Transaction to happen without the connector issue.
Steps To Reproduce
Create a next js app , connect wallet and make a transaction with contract.
Link to Minimal Reproducible Example (CodeSandbox, StackBlitz, etc.)
No response
Anything else?
No response

Are you able to share a minimal repro of this issue?

This issue has been temporarily closed due to the lack of a minimal reproducible example. Please upload a minimal reproducible example (you can use this template) and then we will reopen this issue. :)


Async tasks are not cancelled

When using the asyncmqtt classes and stopping the main process, the async tasks are not cancelled gracefully.

This should probably be tackled in a general approach valid for all classes that employ some sort of loop. Instead of starting loops at instance creation, explicit start() and stop() functions will improve the testability and lifecycle management.

Closed by #75.


added call to authentication callback, rewrote creds extraction

As reported in bug #65 I was not able to see a call to my provided callback.
I am using attached patch in my development branch to allow
a) authentication against the default django auth with a custom use model
b) authentication against a user-specific api-key instead of a password
I would be very happy if you could incorporate the patch.

Will this affect current library users who are using authentication?


Suggestion : Ignore accents and delay/throttle on KeyUp search

Hi,
I'm currently working on a project and need to do some modifications to your plugins.
The two modifications i did was adding a throttle for the event listener keyup on the search field and the second one was to ignore accent both in search and filter method.
I added the delay because i'm working with a google map and needed some sort of delay to help the browser digest the marker update, and instant KeyUp was a bit wild in the double for loop i needed to compare markers and the updated list.
The accent ignore is because i'm french, and those accent can cause issue, as name can be tricky to get right.
As this project is work related, i have not taken the time to add the delay threshold or the ignore accent options in the list declaration. ( and well, i don't have huge experience in javascript either )
I think this plugin would greatly benefit from these two functionalities,
I'm kinda new on GitHub, i'm pretty sure i did not create this pull request as i should have done. Feel free to rework/clean this code as much as needed.

How would you apply the delay function on the fuzzy-search functionality?

Thanks for the PR!
However, you'll have to add the code in the src files not the dist files, and just add one feature per PR. Read more in the contribution guidelines.


Make port configurable

#92

Awesome !
Thanks for this :-)

Can you modify this to merge into the 0.2.1 branch?

Updated to merge into 02.1 branch

I’ll take it for a whirl tomorrow and if all good have it merged!! 😀

FYI, I have tested this and I have kube-vip running on 443

/lgtm :-)
I'll create a 0.2.1 image soon for testing


Sometimes ARP fails

Some packets may be dropped by the network when we send arp packets. If such thing happens arp_ping.py did not handled that. In order to get rid of this we continuously send ARP packets until a successful response come back.

Thank you, I appreciate also your comments and the variable assignment that you used


Add tests for startup timeouts

Tests should be added to verify the behavior of IIS / IIS Express when app startup times out.  For example, the timeout specific to where.exe was removed in https://github.com/aspnet/IISIntegration/pull/970, since we believe the global timeout used by IIS is sufficient.  Assumptions like this should be verified by tests.

We have test coverage for in-proc mode. Closing this.


Bug: signs aren't loaded on startup

Thanks for this plugin, wouldn't have found it if it wasn't just listed recently (#1).
I noticed that the signs (in the signcolumn) do not appear on initial startup. The bookmarks are there and work for going to the next bookmark, but the signs only appear after you switch to a different buffer and then switch back.
I have tried it without lazyloading, still the same issue. I also tried disabling other plugins that add things to the signcolumn (e.g. gitsigns) in case of conflicts there, but the issue persists even then

i will test it, Please provide your   steps  or some video  to reproduce

yeah sure, here an example video
https://user-images.githubusercontent.com/73286100/233785846-1e3dff22-3440-4602-a4a5-31af34e359ff.mp4

This should be fixed. check it or reopen this

Hmm, now it looks like the signs are completely gone. They do appear when adding a new bookmark, but after restart, they do not re-appear, even after switching buffer

sorry ,I don't understand what you mean, i have test it and it should work. you can provide other video.

you can use command ml to check the bookmark list

yes, here see the video. after nvim restart, the signs do not show up. they only appear when switching the app
https://user-images.githubusercontent.com/73286100/233794897-634439bb-c061-4577-9a0b-c12ff15b5f60.mp4

you can use command ml to check the list of bookmarks to see if the bookmarks are saved properly

As the original bug, the bookmarks are saved properly, which can also be seen in the video as the goto next bookmark command works correctly. The issue is only with the signs in the sign column not appearing

weird， Have you modified this plugin yourself? What's your version of nvim?

No, I have made no modifications. I use nvim 0.9

try this:
   ["tomasky/bookmarks.nvim"] = {
      -- opt = true,
      -- after = "telescope.nvim",
      event = "BufWinEnter",
      config = function()

      require('bookmarks').setup {}

disabling lazy loaind, then deleting all bookmarks, then restarting and setting new bookmarks seems to do the trick 🤔

try lazy loading  with:
      event = "BufWinEnter",

"BufWinEnter" does not work, only lazy-loading event that seems to work is VimEnter

anyway, closing this, since VimEnter seems to work

ot work, only lazy-loading event that seems to work is VimEnter

still not stable, some marks diappear after restart, even show other project recorded.

Same


the project has some crashes

terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Duplicate states in queue
when i click quickly Not adjacent button，it will happen.
2.Removing a view controller from UIPageViewController
when i swiping viewController and i click viewController'view'subviews at the same time,it will happen

button.exclusiveTouch =YES;

I'm not sure I understand, would you mind providing a screenshot of what you're touching simultaneously?


[JBEAP-3176] Server logs message with queue deploy even when topic is…

… being deployed.
(cherry picked from commit 2953e46aec18b1c635d7f97e62c1df9d99673f89)

can you add the EAP Jirta to the commit message please


train on Visdrone dataset?

hello
Thanks for your implementation sharing
Is it possible to use this implementation to train model on any dataset such as visdrone?

@mahilaMoghadami you can refear to this (https://mmdetection.readthedocs.io/en/stable/tutorials/customize_dataset.html) to design a custom dataset.

hello
For training on custome dataset, as mmdetection repository, its need to install mmcv>=2.0.0
you mentioned that to install mmcv==0.6.2
Do you think your code will have problems by installing mmcv==2.0.0?


Dealing with NaNs

First off, I want to thank you for this great library.
I think I have come across a bug relating to the way NaN values are handled. I looked through existing issues and couldn't find anything related.
Here's a quick example:
https://jsfiddle.net/c2ny7vvq/
Essentially, when filtering numeric data, $gte / $gt will return NaN values. $lt / $lte excludes them. The way I see it, NaN should be excluded on numeric searches, since they are not numbers. Right now they seem to be treated like Infinity.
Adding the following to both ltHelper and gtHelper seems to fix the issue (at least for numeric data). I'm not sure if this is the right place to put it though - not very familiar with the library internals.
if (isNaN(prop1)) {
  return false;
}

Another option could be to add a $notNaN filter.
Thanks in advance for taking the time to look into this - I look forward to hearing back from you.
Cheers,
Phil

Hi Philippe, since our current lt/gt functionality is used not only for $lt/$gt ops but for sorting and index generation we will probably leave those ops to function as they currently do.  Our current logic places NaN as greater-than ... say 12.
I would guess the easiest way would be to adapt our $ne op to support NaN.  It would be an extra test similar to your example.  We could also extend it to support testing for Infinity and -Infinity which is another weird case.
If your property is always a number (or number represented as string, like "12") we might also add $finite op which can use global javascript isFinite().  JavaScript isFinite() will be true for null, 0, 12, "12", 12.34, etc but false for NaN, Infinity, -Infinity, "test" and other cases.
I will look into the simpler updates to $ne since this is not critical path and that part seems straightforward for now.

Hey @obeliskos,
This makes sense to me - that's actually how I am currently dealing with it (I monkey patched a $notNaN function in LokiOps as a temporary solution) .
So it would be something like this, correct?
'$and': [
  {'$gte': 5},
  {'$ne': NaN }
]

If so, I think this is a clean, flexible solution.
Cheers,
Phil

Yes, well add in the property name like :
'$and': [
  { orderCount: { '$gte': 5} },
  { orderCount: { '$ne': NaN }
]

In the future (possibly in a 2.0 version) we might split out $lt/$gt to use separate helper function than does our index calculation and sorting.
Thanks for raising issue, this should be in master branch, let me know if you have issues with it.

Hey @obeliskos,
This works for me! Thanks for the quick response, and thanks again for this great library.
Cheers,
Phil


R graphics device with HTTP access.

I hope it's ok for me to post this in this issue tracker.
I spent the last couple days writing a graphics device driver for R that is accessible via HTTP.
The main use case would be IDE integration for VSCode and other editors.
It basically collects draw calls in a kind of "virtual DOM" and runs a http server in a background thread. On http request the DOM is rendered to SVG and sent to the client.
This already works surprisingly well.
The code is very experimental, I am not a very experienced C++ programmer and am not too familiar with the R/C++ API.
https://github.com/nx10/httpgd
What do you think of this? Any advice and suggestions from you are very welcome! The project is basically a "proof of concept" right now.
Automatic detection of redraw and window resize are implemented (window resize has some limitations).

Thanks for sharing your work on web-based R graphics device!
I try to install the package but it ends up with the following error:
> devtools::install_github("nx10/httpgd")
Downloading GitHub repo nx10/httpgd@master
   checking for file ‘/private/var/folders/8n/fdyp8ztd42gd2s61p6nzqrgh0000gn/T/RtmpZSorca/remotes71a77858b6e0/nx10-httpgd-4b0d85b/DESCRIPTIO✔  checking for file ‘/private/var/folders/8n/fdyp8ztd42gd2s61p6nzqrgh0000gn/T/RtmpZSorca/remotes71a77858b6e0/nx10-httpgd-4b0d85b/DESCRIPTION’
─  preparing ‘httpgd’:
✔  checking DESCRIPTION meta-information ...
─  cleaning src
─  checking for LF line-endings in source and make files and shell scripts
─  checking for empty or unneeded directories
─  building ‘httpgd_1.0.tar.gz’

clang++ -mmacosx-version-min=10.13 -std=gnu++11 -I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG  -I'/Library/Frameworks/R.framework/Versions/4.0/Resources/library/Rcpp/include' -I'/Library/Frameworks/R.framework/Versions/4.0/Resources/library/RcppThread/include' -I'/Library/Frameworks/R.framework/Versions/4.0/Resources/library/gdtools/include' -I/usr/local/include   -fPIC  -Wall -g -O2  -c RcppExports.cpp -o RcppExports.o
clang++ -mmacosx-version-min=10.13 -std=gnu++11 -I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG  -I'/Library/Frameworks/R.framework/Versions/4.0/Resources/library/Rcpp/include' -I'/Library/Frameworks/R.framework/Versions/4.0/Resources/library/RcppThread/include' -I'/Library/Frameworks/R.framework/Versions/4.0/Resources/library/gdtools/include' -I/usr/local/include   -fPIC  -Wall -g -O2  -c drawdata.cpp -o drawdata.o
Error: Failed to install 'httpgd' from GitHub:
  (converted from warning) installation of package '/var/folders/8n/fdyp8ztd42gd2s61p6nzqrgh0000gn/T//RtmpZSorca/file71a784e69da/httpgd_1.0.tar.gz' had non-zero exit status
Backtrace:
1: stop(remote_install_error(remotes[[i]], e))
2: value[[3L]](cond)
3: tryCatchOne(expr, names, parentenv, handlers[[1L]])
4: tryCatchList(expr, classes, parentenv, handlers)
5: tryCatch(res[[i]] <- install_remote(remotes[[i]], ...), error = function(e) {
6: install_remotes(remotes, auth_token = auth_token, host = host,
7: pkgbuild::with_build_tools({
8: devtools::install_github("nx10/httpgd")

Not sure if it is supposed to work on macOS and R 4.0?
My session info
R version 4.0.0 (2020-04-24)
Platform: x86_64-apple-darwin17.0 (64-bit)
Running under: macOS Catalina 10.15.4

Matrix products: default
BLAS:   /Library/Frameworks/R.framework/Versions/4.0/Resources/lib/libRblas.dylib
LAPACK: /Library/Frameworks/R.framework/Versions/4.0/Resources/lib/libRlapack.dylib

locale:
[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods
[7] base

loaded via a namespace (and not attached):
[1] compiler_4.0.0 jsonlite_1.6.1

Thank you for your response!
I am unsure what causes this error. I only tested on my machine (Windows, R 4.0).
You might be missing a dependancy. Try installing gdtools and RcppThread from CRAN beforehand.

I tried installing the package on Ubuntu and the following error occurs:
✔  checking for file ‘/tmp/RtmpdDwdMP/file1ddef42d21cc0/DESCRIPTION’ ...
─  preparing ‘httpgd’:
✔  checking DESCRIPTION meta-information ...
─  cleaning src
─  checking for LF line-endings in source and make files and shell scripts
─  checking for empty or unneeded directories
─  building ‘httpgd_1.0.tar.gz’

Installing package into '/home/renkun/R/x86_64-pc-linux-gnu-library/4.0'
(as 'lib' is unspecified)
* installing *source* package 'httpgd' ...
** using staged installation
** libs
g++ -std=gnu++11 -I"/usr/share/R/include" -DNDEBUG  -I'/home/renkun/R/x86_64-pc-linux-gnu-library/4.0/Rcpp/include' -I'/home/renkun/R/x86_64-pc-linux-gnu-library/4.0/RcppThread/include' -I'/home/renkun/R/x86_64-pc-linux-gnu-library/4.0/gdtools/include'    -fpic  -g -O2 -fdebug-prefix-map=/build/r-base-Q1aiaj/r-base-4.0.0=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g  -c RcppExports.cpp -o RcppExports.o
g++ -std=gnu++11 -I"/usr/share/R/include" -DNDEBUG  -I'/home/renkun/R/x86_64-pc-linux-gnu-library/4.0/Rcpp/include' -I'/home/renkun/R/x86_64-pc-linux-gnu-library/4.0/RcppThread/include' -I'/home/renkun/R/x86_64-pc-linux-gnu-library/4.0/gdtools/include'    -fpic  -g -O2 -fdebug-prefix-map=/build/r-base-Q1aiaj/r-base-4.0.0=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g  -c drawdata.cpp -o drawdata.o
g++ -std=gnu++11 -I"/usr/share/R/include" -DNDEBUG  -I'/home/renkun/R/x86_64-pc-linux-gnu-library/4.0/Rcpp/include' -I'/home/renkun/R/x86_64-pc-linux-gnu-library/4.0/RcppThread/include' -I'/home/renkun/R/x86_64-pc-linux-gnu-library/4.0/gdtools/include'    -fpic  -g -O2 -fdebug-prefix-map=/build/r-base-Q1aiaj/r-base-4.0.0=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g  -c dummygd.cpp -o dummygd.o
g++ -std=gnu++11 -I"/usr/share/R/include" -DNDEBUG  -I'/home/renkun/R/x86_64-pc-linux-gnu-library/4.0/Rcpp/include' -I'/home/renkun/R/x86_64-pc-linux-gnu-library/4.0/RcppThread/include' -I'/home/renkun/R/x86_64-pc-linux-gnu-library/4.0/gdtools/include'    -fpic  -g -O2 -fdebug-prefix-map=/build/r-base-Q1aiaj/r-base-4.0.0=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g  -c httpgd.cpp -o httpgd.o
httpgd.cpp:5:10: fatal error: winsock2.h: No such file or directory
    5 | #include <winsock2.h>
      |          ^~~~~~~~~~~~
compilation terminated.
make: *** [/usr/lib/R/etc/Makeconf:176: httpgd.o] Error 1
make: *** Waiting for unfinished jobs....
ERROR: compilation failed for package 'httpgd'
* removing '/home/renkun/R/x86_64-pc-linux-gnu-library/4.0/httpgd'
Error: Failed to install 'unknown package' from Git:
  (converted from warning) installation of package '/tmp/RtmpdDwdMP/file1ddef20234d71/httpgd_1.0.tar.gz' had non-zero exit status
Backtrace:
1: stop(remote_install_error(remotes[[i]], e))
2: value[[3L]](cond)
3: tryCatchOne(expr, names, parentenv, handlers[[1L]])
4: tryCatchList(expr, classes, parentenv, handlers)
5: tryCatch(res[[i]] <- install_remote(remotes[[i]], ...), error = function(e) {
6: install_remotes(remotes, credentials = credentials, dependencies = dependencies,
7: pkgbuild::with_build_tools({
8: devtools::install_git("https://github.com/nx10/httpgd.git")

Obviously, Windows header <winsock2.h>  is used but unfortunately I don't have a Windows to try it.

I just pushed changes that enables it to successfully compile and run under linux (Ubuntu). It should also work with macOS but I do not have a suitable machine for testing.

I tried it on Ubuntu and it works! But no luck for macOS:
Downloading git repo https://github.com/nx10/httpgd.git
   checking for file ‘/private/var/folders/8n/fdyp8ztd42gd2s61p6nzqrgh0000gn/T/RtmpJ✔  checking for file ‘/private/var/folders/8n/fdyp8ztd42gd2s61p6nzqrgh0000gn/T/RtmpJjEgoI/file7c6e3a1de62a/DESCRIPTION’
─  preparing ‘httpgd’:
✔  checking DESCRIPTION meta-information ...
─  cleaning src
─  checking for LF line-endings in source and make files and shell scripts
─  checking for empty or unneeded directories
─  building ‘httpgd_1.0.tar.gz’

clang++ -mmacosx-version-min=10.13 -std=gnu++11 -I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG  -I'/Library/Frameworks/R.framework/Versions/4.0/Resources/library/Rcpp/include' -I'/Library/Frameworks/R.framework/Versions/4.0/Resources/library/RcppThread/include' -I'/Library/Frameworks/R.framework/Versions/4.0/Resources/library/gdtools/include' -I/usr/local/include   -fPIC  -Wall -g -O2  -c RcppExports.cpp -o RcppExports.o
clang++ -mmacosx-version-min=10.13 -std=gnu++11 -I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG  -I'/Library/Frameworks/R.framework/Versions/4.0/Resources/library/Rcpp/include' -I'/Library/Frameworks/R.framework/Versions/4.0/Resources/library/RcppThread/include' -I'/Library/Frameworks/R.framework/Versions/4.0/Resources/library/gdtools/include' -I/usr/local/include   -fPIC  -Wall -g -O2  -c drawdata.cpp -o drawdata.o
Error: Failed to install 'unknown package' from Git:
  (converted from warning) installation of package '/var/folders/8n/fdyp8ztd42gd2s61p6nzqrgh0000gn/T//RtmpJjEgoI/file7c6e37b75c5e/httpgd_1.0.tar.gz' had non-zero exit status
Backtrace:
1: stop(remote_install_error(remotes[[i]], e))
2: value[[3L]](cond)
3: tryCatchOne(expr, names, parentenv, handlers[[1L]])
4: tryCatchList(expr, classes, parentenv, handlers)
5: tryCatch(res[[i]] <- install_remote(remotes[[i]], ...), error = function(e) {
6: install_remotes(remotes, credentials = credentials, dependencies = dependencies,
7: pkgbuild::with_build_tools({
8: devtools::install_git("https://github.com/nx10/httpgd.git")

I just modified the DESCRIPTION file, can you try again to make sure its not caused by some caching?
I also cleaned up the project so that R CMD check gives me 0 warnings and 0 notes.

I didn't clone the repo and install it from github (no cache issue but it still does not compile on macOS. Maybe I'll clone the repo and take a closer look.

I was able to borrow a mac book and found the source of your problem with running the graphics device under mac OS:
It seems like a recent mac OS update (Catalina) removed shared libraries used by the package systemfonts (see: https://github.com/r-lib/systemfonts/issues/17).
You can install XQuartz as a workaround (https://www.xquartz.org/).

I have worked a lot on the graphics server in the last couple of days.
Automatic resizing, plot history and concurrently running multiple servers is now possible.
What next steps should I take for it to be considered for including it in vscode-R?
Should I work on a CRAN release? Are there API changes you want to see?

Thanks for the hard work!
I cannot install it on Ubuntu like the following:
Downloading git repo https://github.com/nx10/httpgd.git
✔  checking for file ‘/tmp/RtmpIBNuxG/file876ef25ef3176/DESCRIPTION’ ...
─  preparing ‘httpgd’:
✔  checking DESCRIPTION meta-information ...
─  cleaning src
   Warning in system2(command, args, stdout = NULL, stderr = NULL, ...) :
     error in running command
─  checking for LF line-endings in source and make files and shell scripts
─  checking for empty or unneeded directories
─  building ‘httpgd_0.3.1.tar.gz’

Installing package into '/home/renkun/R/x86_64-pc-linux-gnu-library/4.0'
(as 'lib' is unspecified)
* installing *source* package 'httpgd' ...
** using staged installation
** libs
g++ -std=gnu++11 -I"/usr/share/R/include" -DNDEBUG  -I'/home/renkun/R/x86_64-pc-linux-gnu-library/4.0/Rcpp/include' -I'/home/renkun/R/x86_64-pc-linux-gnu-library/4.0/later/include' -I'/home/renkun/R/x86_64-pc-linux-gnu-library/4.0/gdtools/include'    -fpic  -g -O2 -fdebug-prefix-map=/build/r-base-Q1aiaj/r-base-4.0.0=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g  -c FontAnalyzer.cpp -o FontAnalyzer.o
g++ -std=gnu++11 -I"/usr/share/R/include" -DNDEBUG  -I'/home/renkun/R/x86_64-pc-linux-gnu-library/4.0/Rcpp/include' -I'/home/renkun/R/x86_64-pc-linux-gnu-library/4.0/later/include' -I'/home/renkun/R/x86_64-pc-linux-gnu-library/4.0/gdtools/include'    -fpic  -g -O2 -fdebug-prefix-map=/build/r-base-Q1aiaj/r-base-4.0.0=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g  -c HttpgdDev.cpp -o HttpgdDev.o
g++ -std=gnu++11 -I"/usr/share/R/include" -DNDEBUG  -I'/home/renkun/R/x86_64-pc-linux-gnu-library/4.0/Rcpp/include' -I'/home/renkun/R/x86_64-pc-linux-gnu-library/4.0/later/include' -I'/home/renkun/R/x86_64-pc-linux-gnu-library/4.0/gdtools/include'    -fpic  -g -O2 -fdebug-prefix-map=/build/r-base-Q1aiaj/r-base-4.0.0=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g  -c HttpgdServer.cpp -o HttpgdServer.o
g++ -std=gnu++11 -I"/usr/share/R/include" -DNDEBUG  -I'/home/renkun/R/x86_64-pc-linux-gnu-library/4.0/Rcpp/include' -I'/home/renkun/R/x86_64-pc-linux-gnu-library/4.0/later/include' -I'/home/renkun/R/x86_64-pc-linux-gnu-library/4.0/gdtools/include'    -fpic  -g -O2 -fdebug-prefix-map=/build/r-base-Q1aiaj/r-base-4.0.0=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g  -c PlotHistory.cpp -o PlotHistory.o
g++ -std=gnu++11 -I"/usr/share/R/include" -DNDEBUG  -I'/home/renkun/R/x86_64-pc-linux-gnu-library/4.0/Rcpp/include' -I'/home/renkun/R/x86_64-pc-linux-gnu-library/4.0/later/include' -I'/home/renkun/R/x86_64-pc-linux-gnu-library/4.0/gdtools/include'    -fpic  -g -O2 -fdebug-prefix-map=/build/r-base-Q1aiaj/r-base-4.0.0=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g  -c RcppExports.cpp -o RcppExports.o
g++ -std=gnu++11 -I"/usr/share/R/include" -DNDEBUG  -I'/home/renkun/R/x86_64-pc-linux-gnu-library/4.0/Rcpp/include' -I'/home/renkun/R/x86_64-pc-linux-gnu-library/4.0/later/include' -I'/home/renkun/R/x86_64-pc-linux-gnu-library/4.0/gdtools/include'    -fpic  -g -O2 -fdebug-prefix-map=/build/r-base-Q1aiaj/r-base-4.0.0=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g  -c drawdata.cpp -o drawdata.o
g++ -std=gnu++11 -I"/usr/share/R/include" -DNDEBUG  -I'/home/renkun/R/x86_64-pc-linux-gnu-library/4.0/Rcpp/include' -I'/home/renkun/R/x86_64-pc-linux-gnu-library/4.0/later/include' -I'/home/renkun/R/x86_64-pc-linux-gnu-library/4.0/gdtools/include'    -fpic  -g -O2 -fdebug-prefix-map=/build/r-base-Q1aiaj/r-base-4.0.0=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g  -c dummygd.cpp -o dummygd.o
g++ -std=gnu++11 -I"/usr/share/R/include" -DNDEBUG  -I'/home/renkun/R/x86_64-pc-linux-gnu-library/4.0/Rcpp/include' -I'/home/renkun/R/x86_64-pc-linux-gnu-library/4.0/later/include' -I'/home/renkun/R/x86_64-pc-linux-gnu-library/4.0/gdtools/include'    -fpic  -g -O2 -fdebug-prefix-map=/build/r-base-Q1aiaj/r-base-4.0.0=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g  -c httpgd.cpp -o httpgd.o
HttpgdServer.cpp:11:10: fatal error: DrawData.h: No such file or directory
   11 | #include "DrawData.h"
      |          ^~~~~~~~~~~~
compilation terminated.
make: *** [/usr/lib/R/etc/Makeconf:176: HttpgdServer.o] Error 1
make: *** Waiting for unfinished jobs....
drawdata.cpp:11:10: fatal error: DrawData.h: No such file or directory
   11 | #include "DrawData.h"
      |          ^~~~~~~~~~~~
compilation terminated.
make: *** [/usr/lib/R/etc/Makeconf:176: drawdata.o] Error 1
In file included from HttpgdDev.h:12,
                 from HttpgdDev.cpp:4:
HttpgdServer.h:11:10: fatal error: DrawData.h: No such file or directory
   11 | #include "DrawData.h"
      |          ^~~~~~~~~~~~
compilation terminated.
In file included from HttpgdDev.h:12,
                 from httpgd.cpp:11:
HttpgdServer.h:11:10: fatal error: DrawData.h: No such file or directory
   11 | #include "DrawData.h"
      |          ^~~~~~~~~~~~
compilation terminated.
make: *** [/usr/lib/R/etc/Makeconf:176: httpgd.o] Error 1
make: *** [/usr/lib/R/etc/Makeconf:176: HttpgdDev.o] Error 1
ERROR: compilation failed for package 'httpgd'
* removing '/home/renkun/R/x86_64-pc-linux-gnu-library/4.0/httpgd'
* restoring previous '/home/renkun/R/x86_64-pc-linux-gnu-library/4.0/httpgd'
Error: Failed to install 'unknown package' from Git:
  (converted from warning) installation of package '/tmp/RtmpIBNuxG/file876ef7abf998d/httpgd_0.3.1.tar.gz' had non-zero exit status
Backtrace:
1: stop(remote_install_error(remotes[[i]], e))
2: value[[3L]](cond)
3: tryCatchOne(expr, names, parentenv, handlers[[1L]])
4: tryCatchList(expr, classes, parentenv, handlers)
5: tryCatch(res[[i]] <- install_remote(remotes[[i]], ...), error = function(e) {
6: install_remotes(remotes, credentials = credentials, dependencies = dependencies,
7: pkgbuild::with_build_tools({
8: devtools::install_git("https://github.com/nx10/httpgd.git")

Sorry, fixed it.

Thanks for the quick fix! It now works out of the box on Ubuntu and macOS (without xquartz, maybe due to the latest macOS Catalina 10.15.5 update? Never sure about that).
I'll do more testing and give feedback soon.

I'm trying overwriting device specified by session watcher with httpgd device and it works well.
options(device = function(...) {
  httpgd::httpgd(...)
  utils::browseURL(httpgd::httpgdURL())
}

But currently there's no way for user to change device in ~/.Rprofile if R: Create R terminal is used to start R session in VSCode.
I'll bring together several issues about controling the behavior of session watcher include default device, plot watcher and viewer, viewer position, browser position, etc. so that it is easier for user to customize session watcher features and behaviors.

Try installing gdtools and RcppThread from CRAN beforehand.
This just fixed my problem on my M1 Mac (OS 12.4). Had been running into Base64 header errors. Thank you!


[Question] Implementing Long-Running Operations with SyncPoller

Query/Question
Hello Experts,
I am reaching out to seek your expertise regarding an implementation challenge I am facing with testing our API, which supports two primary use cases: Real-time and Batch processing.
Context:

Real-time Processing: Allows clients to send requests and receive immediate results.
Batch Processing: Clients submit a batch job request and receive a response containing the job's status. The status of the job changes as it progresses, and clients can query the current status through a dedicated endpoint in our API.

Issue: My challenge revolves around the implementation of Long-Running Operations (LROs) for job creation. Specifically, I am looking for guidance on how to use the SyncPoller in this context. I am sending my requests to a LIVE environment and my RealTime test cases are passing.
Here is my draft PR where you can find the code: https://github.com/Azure/azure-sdk-for-java/pull/40725
My test setup with client configuration
protected void beforeTest() {
        DeidentificationClientBuilder deidentificationClientbuilder = new DeidentificationClientBuilder()
            .endpoint(Configuration.getGlobalConfiguration().get("DEID_SERVICE_ENDPOINT", "endpoint"))
            .httpClient(HttpClient.createDefault())
            .httpLogOptions(new HttpLogOptions().setLogLevel(HttpLogDetailLevel.BASIC));
        if (getTestMode() == TestMode.PLAYBACK) {
            deidentificationClientbuilder.httpClient(interceptorManager.getPlaybackClient())
                .credential(request -> Mono.just(new AccessToken("this_is_a_token", OffsetDateTime.MAX)));
        } else if (getTestMode() == TestMode.RECORD) {
            deidentificationClientbuilder.addPolicy(interceptorManager.getRecordPolicy())
                .credential(new DefaultAzureCredentialBuilder().build());
        } else if (getTestMode() == TestMode.LIVE) {
            deidentificationClientbuilder.credential(new DefaultAzureCredentialBuilder().build());
        }
        deidentificationClient = deidentificationClientbuilder.buildClient();
    }

sdk/healthdataaiservices/azure-health-deidentification/src/test/java/com/azure/health/deidentification/batch/SyncJobOperationsTest.java
SyncPoller<DeidentificationJob, DeidentificationJob> poller = deidentificationClient.beginCreateJob(jobName, job);

When I am doing it I get the followinng error:
java.lang.IllegalStateException: Cannot poll with strategy SyncOperationLocationPollingStrategy
Why is this not a Bug or a feature Request?
It is probably my lack of knowledge with the Java SDK.
Setup (please complete the following information if applicable):

OS: Windows
IDE: IntelliJ
Library/Libraries: [e.g. com.azure:azure-core:1.16.0 (groupId:artifactId:version)]

Information Checklist
Kindly make sure that you have added all the following information above and checkoff the required fields otherwise we will treat the issuer as an incomplete report

[x] Query Added
[x] Setup information Added

HI @alzimmermsft, Thanks for the quick reply. The polling endpoint url is valid and the initial response is successful too, but it doesn't have the Location Header.

What URL should be in the location header?

Pulling in @srnagar and @weidongxu-microsoft as this differs from the expected pattern of OperationResourcePollingStrategy polling. Do we have any design recommendations for the pattern above?


Added mobile add-on link

My god, this project has come back from the dead? Oh frabjous day!

Giggity :sparkles:
On Jan 16, 2015 10:55 PM, "Chris Rebert"<EMAIL_ADDRESS>wrote:

My god, this project has come back from the dead? Oh frabjous day!
—
Reply to this email directly or view it on GitHub
https://github.com/eternicode/bootstrap-datepicker/pull/1202#issuecomment-70353428
.


Running list of coros that hold the event loop for too long

These coros have held the event loop for too long, and need to be more cooperative. The longest known blocking time is included:

Last verified at a2c69cee88626c9

[ ] SkeletonSyncer.run() running at /home/jcarver/code/trinity/trinity/sync/common/headers.py:129 800s (not a typo!)
[ ] Multiplexer._do_multiplexing() running at /home/jcarver/code/trinity/p2p/multiplexer.py:333 6.3s
[ ] BeamStateBackfill.run() running at /home/jcarver/code/trinity/trinity/sync/beam/backfill.py:142 2.9s
[ ] Connection._feed_protocol_handlers() running at /home/jcarver/code/trinity/p2p/connection.py:225 2.0s
[ ] BasePeerPool.connect_to_node() running at /home/jcarver/code/trinity/p2p/peer_pool.py:452 1.9s
[ ] PeerPoolEventServer.handle_native_peer_messages() running at /home/jcarver/code/trinity/trinity/protocol/common/peer_pool_event_bus.py:254 0.8s
[ ] BeamDownloader._store_nodes() done, defined at /home/jcarver/code/trinity/trinity/sync/beam/state.py:531 0.7s
[ ] BeamBlockImporter._preview_address_load() running at /home/jcarver/code/trinity/trinity/sync/beam/chain.py:811 0.5s
[ ] RegularChainBodySyncer._import_ready_blocks() running at /home/jcarver/code/trinity/trinity/sync/full/chain.py:1145 0.5s
[x] _run() running at /home/jcarver/code/trinity/trinity/bootstrap.py:275 0.3s

I collected this data with:
diff --git a/async_service/asyncio.py b/async_service/asyncio.py
index 3ae6abc..3a82653 100644
--- a/async_service/asyncio.py
+++ b/async_service/asyncio.py
@@ -32,10 +32,16 @@ class FunctionTask(BaseFunctionTask):
     #
     async def run(self) -> None:
         try:
-            await self._async_fn(*self._async_fn_args)
+            # Name the task, to make it easier to identify which task is holding the event loop too long
+            await asyncio.create_task(
+                self._async_fn(*self._async_fn_args),
+                name=self.name,
+            )
             if self.daemon:
                 raise DaemonTaskExit(f"Daemon task {self} exited")

(I think the create_task part is more important than the name= part)

_run() running at /home/jcarver/code/trinity/trinity/bootstrap.py:275  0.3s

This one is only called upon startup and it's where asyncio-rip runs the subprocess for a component, so I don't think there's much we can do to avoid it blocking for a bit. And even if there was I don't think it would improve startup time significantly

Agreed, just included it for completeness. But I'll check it off as WONTFIX for now.

Connection._feed_protocol_handlers() running at /home/jcarver/code/trinity/p2p/connection.py:225

This one may be fixed in #1964 (https://github.com/ethereum/trinity/pull/1964/files#diff-0677b3758440107726c19b15c4d05f0cR280-R281)

Multiplexer._do_multiplexing() running at /home/jcarver/code/trinity/p2p/multiplexer.py:333 6.3s

This one is interesting because _handle_commands() consumes items from an async iterator that relinquishes control back to the event loop on every iteration. But one of the things it does is decoding of messages, which I expect could take long but hopefully not 6s

But one of the things it does is decoding of messages

Which at least will get a nice performance boost with the new rust based RLP decoding that is in the works.

Ahah, I got a lead on why we have some coroutines complaining here that don't make any sense!
Check this out:
   DEBUG  2020-08-17 14:06:10,881           ETHPeerPool  ETHPeer (eth, 63) <Session <Node(0xaa9c91@<IP_ADDRESS>)> 490c579f-49ba-462f-bf24-e7c6a47dc70d>: uptime=3m18s, received_msgs=1590
   DEBUG  2020-08-17 14:06:10,881           ETHPeerPool  client_version_string='teth/v0.1/linux/go1.12.14'
   DEBUG  2020-08-17 14:06:10,882           ETHPeerPool      <class 'trinity.protocol.eth.commands.BlockBodiesV65'>: None!
   DEBUG  2020-08-17 14:10:38,179           ETHPeerPool      <class 'trinity.protocol.eth.commands.BlockHeadersV65'>: msgs=1  items=2  rtt=19.10/1.91/0.00  ips=0.05243  timeouts=0  quality=5
   DEBUG  2020-08-17 14:10:38,179           ETHPeerPool      <class 'trinity.protocol.eth.commands.NodeDataV65'>: msgs=1  items=0  rtt=19.50/10.00/0.00  ips=0.00000  timeouts=1  quality=0
...
 WARNING  2020-08-17 14:10:38,182               asyncio  Executing <Task pending name='_periodically_report_stats' coro=<BasePeerPool._periodically_report_stats() running at /home/jcarver/code/trinity/p2p/peer_pool.py:553> wait_for=<Future pending cb=[<TaskWakeupMethWrapper object at 0x7f8ce0473550>()] created at /home/jcarver/.pyenv/versions/3.8.5/lib/python3.8/asyncio/tasks.py:643> cb=[<TaskWakeupMethWrapper object at 0x7f8cf404e6d0>()] created at /home/jcarver/.pyenv/versions/3.8.5/lib/python3.8/asyncio/tasks.py:382> took 267.314 seconds

Note that there is a 4.5 minute gap in the middle of reporting a single peer's stats.
The series of extra stats about a peer is logged here:
https://github.com/ethereum/trinity/blob/1af692e67f4c54fcd986e6fad6a9e51bbbfe667f/p2p/peer_pool.py#L547-L548
The extra stats are returned as a tuple, so there is no extra computation between each loop iteration. So it seems that the only remaining explanation is logging itself.

With the logging issue pushed out of the way (I think), I'm still getting some surprises. Here are some asyncio warnings, and how long they held the loop:
coro=<GetNodeDataV65Exchange.__call__() running at /home/jcarver/code/trinity/trinity/protocol/eth/exchanges.py:105>  28.395 seconds
coro=<BeamDownloader._get_nodes() done, defined at /home/jcarver/code/trinity/trinity/sync/beam/state.py:571>  26.139 seconds
coro=<PingAndDisconnectIfIdle.run.<locals>.set_msg_received() done, defined at /home/jcarver/code/trinity/p2p/p2p_api.py:47>  26.128 seconds
<Handle _chain_future.<locals>._set_state created at /home/jcarver/.pyenv/versions/3.8.5/lib/python3.8/asyncio/futures.py:374>  24.48 seconds
coro=<BasePeer._handle_subscriber_message() done, defined at /home/jcarver/code/trinity/p2p/peer.py:324>  21.53 seconds
coro=<BeamDownloader._node_hashes_present() running at /home/jcarver/code/trinity/trinity/sync/beam/state.py:649>  19.858 seconds
coro=<Multiplexer._do_multiplexing() running at /home/jcarver/code/trinity/p2p/multiplexer.py:342>  18.585 seconds
coro=<BeamDownloader._get_predictive_nodes_from_peer() done, defined at /home/jcarver/code/trinity/trinity/sync/beam/state.py:555>  18.081 seconds
coro=<BeamStateBackfill.pop_fastest_peasant() running at /home/jcarver/code/trinity/trinity/sync/beam/backfill.py:129>  16.53 seconds
coro=<BeamDownloader._get_nodes() running at /home/jcarver/code/trinity/trinity/sync/beam/state.py:576>  11.99 seconds
coro=<BaseManager._run_and_manage_task() running at /home/jcarver/code/async-service/async_service/base.py:300>  9.94 seconds
coro=<BeamDownloader.download_accounts() running at /home/jcarver/code/trinity/trinity/sync/beam/state.py:319>  4.408 seconds
coro=<AsyncioIsolatedComponent._loop_monitoring_task() running at /home/jcarver/code/trinity/trinity/extensibility/asyncio.py:28>  1.783 seconds
coro=<MissingDataEventHandler._serve_storage() running at /home/jcarver/code/trinity/trinity/sync/beam/chain.py:1093>  1.07 seconds
coro=<BeamBlockImporter._request_address_nodes() running at /home/jcarver/code/trinity/trinity/sync/beam/chain.py:889>  1.036 seconds
coro=<RegularChainBodySyncer._preview_ready_blocks() running at /home/jcarver/code/trinity/trinity/sync/full/chain.py:1088>  1.02 seconds
coro=<MissingDataEventHandler._serve_account() running at /home/jcarver/code/trinity/trinity/sync/beam/chain.py:1050>  0.908 seconds

This is the line that sometimes holds the event loop for too long during _do_multiplexing:
https://github.com/ethereum/trinity/blob/12103e8efe0bdb79b7febf5bb5a18b8d5ccec4d5/p2p/multiplexer.py#L90
Opening a PR soon

Waaat:
 WARNING  2020-08-19 15:56:19,285               asyncio  Executing <Task pending name='BeamDownloader._wait_for_nodes->_node_hashes_present' coro=<BeamDownloader._node_hashes_present() running at /home/jcarver/code/trinity/trinity/sync/beam/state.py:622> wait_for=<Future pending cb=[_chain_future.<locals>._call_check_cancel() at /home/jcarver/.pyenv/versions/3.8.5/lib/python3.8/asyncio/futures.py:360, <TaskWakeupMethWrapper object at 0x7f6700259370>()] created at /home/jcarver/.pyenv/versions/3.8.5/lib/python3.8/asyncio/futures.py:388> cb=[<TaskWakeupMethWrapper object at 0x7f66f02e6670>()] created at /home/jcarver/.pyenv/versions/3.8.5/lib/python3.8/asyncio/tasks.py:382> took 0.735 seconds

https://github.com/ethereum/trinity/blob/12103e8efe0bdb79b7febf5bb5a18b8d5ccec4d5/trinity/sync/beam/state.py#L618-L627
How could this possibly be holding the event loop for 0.7s?


Client OS

Please make clear that this article does not apply to Windows 7, Windows 8.1 and Windows 10 VMs in Azure or that some steps don't work for these OS-es.

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

ID: 569e7254-9550-9b37-a601-36308ee72774
Version Independent ID: 1658a4da-132b-44b1-b55c-66c0345687f8
Content: Cannot connect with RDP to a Windows VM in Azure
Content Source: articles/virtual-machines/troubleshooting/troubleshoot-rdp-connection.md
Service: virtual-machines-windows
GitHub Login: @roiyz-msft
Microsoft Alias: roiyz

@andrePKI Thanks for the your feedback. We are investigating and will update you shortly.

@andrePKI we can work off the other issue you opened. For this one, it works for the majority of OS's so we would like to leave this specific doc as is. Your comment will remain on this doc though so if others come and comment we can always reconsider.


Inject InferType instance to evalConstantExpr()

Brief
This is a followup PR after #193.
Changes

[x] Update dependencies.
[x] Inject InferType instance as an argument for constant expression evaluator. This would allow us to react in behavior difference for various Solidity versions in the future.
[x] Tweak InferType.typeOfElementaryTypeNameExpression() to have more precise return type.
[x] Fix affected tests.

Notes
This PR contains API breaking changes. Pending release should increase major version of the package to not break the dependent packages.
Regards.

Codecov Report

Merging #194 (d5e5779) into master (73a2059) will increase coverage by 0.00%.
The diff coverage is 96.42%.

@@           Coverage Diff           @@
##           master     #194   +/-   ##
=======================================
  Coverage   91.36%   91.36%
=======================================
  Files         266      266
  Lines        6390     6392    +2
  Branches     1264     1263    -1
=======================================
+ Hits         5838     5840    +2
  Misses        302      302
  Partials      250      250

Impacted Files
Coverage Δ

src/types/eval_const.ts
89.89% <95.00%> (-0.16%)
:arrow_down:

src/types/infer.ts
80.90% <100.00%> (ø)

src/types/utils.ts
85.05% <100.00%> (+0.39%)
:arrow_up:

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