Fix error in validation

Fix error in valdiation between womtool 73 vs 80. @byoo
Add manifest file. Closes $66.
Also fix renaming script.
@williamrowell ready for a quick review.

@byoo @vsmalladi @ducatiMonster916 Merged, ready to test.

@vsmalladi, the test failed. It complains that ".bai" files don't exist for the uBAMs. Is it possible not to associate a uBAM with an index?
https://github.com/PacificBiosciences/pb-human-wgs-workflow-wdl/blob/7f07b8ae4bb25e850cfb31373bbe0b3f8a0a81cf/workflows/smrtcells/tasks/pbmm2.wdl#L60

@byoo we do have a bai file that is empty.
https://github.com/PacificBiosciences/pb-human-wgs-workflow-wdl/blob/c461160efc79cecbfe14b093e65a966733f9505b/workflows/smrtcells/tasks/pbmm2.wdl#L56
Can you do an updated pull, the example you point to is an older commit?

@vsmalladi, sorry the test run should have used the updated code. I am confused. The pipeline is looking for bai file for the input uBAMs that doesn't exist. Do you mean that the input uBAMs should have associated empty bai file created by the pipeline?

@byoo That is how I wrote it. Is the downstream process expecting a bai file with data? If so then we will have to index to ubam

It's not possible to bai index the uBAM, so processes that use uBAM input should not require an index.

@williamrowell  agreed
@byoo what is the actually error?

@vsmalladi, "Could not process output, file not found" happen for input uBAMs. I guess uBAM is not supposed to use the IndexedData type? For instance,

java.io.FileNotFoundException: Could not process output, file not found: /p1gmcstorpacbio01/pbdata/r64225e_20220818_161406/1_A01/m64225e_220818_162540.hifi_reads.bam.bai
at cromwell.backend.impl.tes.TesAsyncBackendJobExecutionActor.$anonfun$mapOutputWomFile$1(TesAsyncBackendJobExecutionActor.scala:277)
at wom.values.WomSingleFile.mapFile(WomFile.scala:201)
at wom.values.WomSingleFile.mapFile(WomFile.scala:182)
at cromwell.backend.impl.tes.TesAsyncBackendJobExecutionActor.mapOutputWomFile(TesAsyncBackendJobExecutionActor.scala:270)
at cromwell.backend.standard.StandardAsyncExecutionActor.$anonfun$outputValueMapper$1(StandardAsyncExecutionActor.scala:907)
at wom.WomFileMapper$.$anonfun$mapWomFiles$1(WomFileMapper.scala:24)
at scala.util.Try$.apply(Try.scala:213)
at wom.WomFileMapper$.mapWomFiles(WomFileMapper.scala:24)
at wom.WomFileMapper$.$anonfun$mapWomFiles$6(WomFileMapper.scala:39)
at scala.collection.TraversableLike.$anonfun$map$1(TraversableLike.scala:286)
at scala.collection.immutable.Map$Map3.foreach(Map.scala:376)
at scala.collection.TraversableLike.map(TraversableLike.scala:286)
at scala.collection.TraversableLike.map$(TraversableLike.scala:279)
at scala.collection.AbstractTraversable.map(Traversable.scala:108)
at wom.WomFileMapper$.mapWomFiles(WomFileMapper.scala:38)
at cromwell.backend.standard.StandardAsyncExecutionActor.outputValueMapper(StandardAsyncExecutionActor.scala:907)
at cromwell.backend.standard.StandardAsyncExecutionActor.outputValueMapper$(StandardAsyncExecutionActor.scala:906)
at cromwell.backend.impl.tes.TesAsyncBackendJobExecutionActor.outputValueMapper(TesAsyncBackendJobExecutionActor.scala:55)
at cromwell.backend.standard.StandardAsyncExecutionActor.$anonfun$evaluateOutputs$1(StandardAsyncExecutionActor.scala:929)
at cromwell.backend.OutputEvaluator$.$anonfun$evaluateOutputs$5(OutputEvaluator.scala:63)
at cats.data.EitherT.$anonfun$flatMap$1(EitherT.scala:405)
at scala.util.Success.flatMap(Try.scala:251)
at cats.instances.TryInstances$$anon$1.flatMap(try.scala:37)
at cats.instances.TryInstances$$anon$1.flatMap(try.scala:14)
at cats.data.EitherT.flatMap(EitherT.scala:403)
at cromwell.backend.OutputEvaluator$.$anonfun$evaluateOutputs$4(OutputEvaluator.scala:62)
at cats.data.EitherT.$anonfun$flatMap$1(EitherT.scala:405)
at scala.util.Success.flatMap(Try.scala:251)
at cats.instances.TryInstances$$anon$1.flatMap(try.scala:37)
at cats.instances.TryInstances$$anon$1.flatMap(try.scala:14)
at cats.data.EitherT.flatMap(EitherT.scala:403)

I think it needs a non empty file. Let me do some gymnastics and do a PR.


Add separator matcher

Fixes #12
Adds separator matching. Limits separators to common ones ([ ,._-]). Could be expanded to any non-ascii / digit.
To get this to work, I had to override bruteforce and repeat matchers. They would both eat separators and cause the separator to be integrated into other matching. The example used in the issue (buy by beer) still uses the repeat pattern even when there is a separator matcher unless this is changed. Other examples like correct horse battery staple would use bruteforce instead of separators. The final result is to remove bruteforce matches if they have a separator in them. repeats now only match non-separator chars, so they are excluded by default from generating matches with them.
The scoring still feels off to me. I removed additional guesses from being added to repeat separators, as I figured they were enough of a pattern to be easily guessable. This is probably not the right response, and the score still feels high to me. In the issue, the same buy by beer has a nbvcxz result posted showing a much lower entropy. I seem to agree with that one more than the one I generate.
Regardless, I figured this may be a starting point for someone else to potentially point out problems or provide solutions.

The ideas thrown around https://github.com/zxcvbn-ts/zxcvbn/issues/12#issuecomment-777777003 may be the better alternatives to strictly matching a new type of pattern and having that impact the entropy too highly.

Example output
https://user-images.githubusercontent.com/5354614/172940412-3ce19dc0-0318-401a-93be-44012b686ca0.mov

Well shoot, I definitely forgot to work on the unit tests after I made more changes. I keep running into No element indexed by 31 errors, and don't know how to diagnose them. I definitely messed up the repeat tests. I will try to fix that if I have time today.

Hey, thanks for this pull request 👍
I think the unit test errors are because you changed the repeat matcher a little bit which results in a different behaviour than before with a different scoring even for cases without a separator.

@domosapien could you please resolve the conflicts, so that i can review it once more and maybe merge it this time?

The merge wasn't bad, but there were some failing unit tests for missing translations, which I had just put in as placeholders anyway. I've removed those translations / placeholders to allow for successful unit tests. If you would like to add them, please feel free. I'm not sure what the suggestion would be for separator usage anyway 🙃

I didn't like the scoring that was coming out of the demo. Still seems way too high. I don't know if this should be merged yet.

I actually don't know if the separators are the issue, or the general issue of determining the lowest entropy path and score.

Could you fix the linting, too?
As you can see in your video above this separator matcher that you implement works just fine. It is splitting buy by beer correctly and the example from https://github.com/zxcvbn-ts/zxcvbn/issues/143 too.
The scoring from the java port is a different matter, as the author described. He implemented another matching algorithm as the original doesn't seem quite right. This would be another separated issue for this library but your separater matcher is working as indented :)


Should import-ome-zarr add wavelength_id (and/or label) information into omero metadata?

At the moment we don't add anything.
The test with BIA data has label, but not wavelength_id:
{
  "multiscales" : [ {
    "metadata" : {
      "method" : "loci.common.image.SimpleImageScaler",
      "version" : "Bio-Formats 6.13.0"
    },
    "axes" : [ {
      "name" : "t",
      "type" : "time"
    }, {
      "name" : "c",
      "type" : "channel"
    }, {
      "unit" : "micrometer",
      "name" : "z",
      "type" : "space"
    }, {
      "unit" : "micrometer",
      "name" : "y",
      "type" : "space"
    }, {
      "unit" : "micrometer",
      "name" : "x",
      "type" : "space"
    } ],
    "name" : "WD1_15-02_WT_confocalonly.tif",
    "datasets" : [ {
      "path" : "0",
      "coordinateTransformations" : [ {
        "scale" : [ 1.0, 1.0, 0.5002026153846154, 0.04298806423500096, 0.04298806423500096 ],
        "type" : "scale"
      } ]
    }, {
      "path" : "1",
      "coordinateTransformations" : [ {
        "scale" : [ 1.0, 1.0, 0.5002026153846154, 0.08597612847000193, 0.08597612847000193 ],
        "type" : "scale"
      } ]
    } ],
    "version" : "0.4"
  } ],
  "omero" : {
    "channels" : [ {
      "color" : "808080",
      "coefficient" : 1,
      "active" : true,
      "label" : "Channel 0",
      "window" : {
        "min" : 0.0,
        "max" : 133.0,
        "start" : 0.0,
        "end" : 133.0
      },
      "family" : "linear",
      "inverted" : false
    } ],
    "rdefs" : {
      "defaultT" : 0,
      "model" : "greyscale",
      "defaultZ" : 18
    }
  }
}

If we now run import-ome-zarr an then cellpose-segmentation, with channel=Channel(label="Channel 0"), get_channel_from_image_zarr fails in getting back the right OmeroChannel object - see traceback below.
Note that the issue is not identifying the channel (which I think could be done correctly via the label), but it is with this block
def get_omero_channel_list(*, image_zarr_path: str) -> list[OmeroChannel]:
    group = zarr.open_group(image_zarr_path, mode="r+")
    channels_dicts = group.attrs["omero"]["channels"]
    channels = [OmeroChannel(**c) for c in channels_dicts]
    return channels

which cannot cast data into OmeroChannel objects because wavelength_id is required.

        This is a helper function that combines `get_omero_channel_list` with
        `get_channel_from_list`.

        Args:
            image_zarr_path: Path to an OME-NGFF image zarr group.
            label: `label` attribute of the channel to be extracted.
            wavelength_id: `wavelength_id` attribute of the channel to be
                extracted.

        Args:
            image_zarr_path: Path to an OME-NGFF image zarr group.

E   pydantic.error_wrappers.ValidationError: 1 validation error for OmeroChannel
E   wavelength_id
E     field required (type=value_error.missing)

pydantic/main.py:341: ValidationError

First proposed solution:

import-ome-zarr adds wavelength_id to all existing entries in the omero.channels list.
The value is made of the value of label (if it exists)
What if labels are not unique across the list? Probably we have to add something like _1, _2, ...

Broader question:
4. What if the whole omero block is missing? Should we create one by scratch?

That makes sense :)
Yes, let's go with this first implementation as proposed by you, i.e. have it use label (if it exists) with optional suffixes if it's non-unique.
If there is no label, let's just use numbers for both label and wavelength id, e.g.
label: 1
label: 2
label: 3
For the 3 channels, same for wavelength id

What if the whole omero block is missing? Should we create one by scratch?

If we can reasonably create that block, then yes. I'd leave out Window (that is allowed now by all our models, right?). Not 100% sure anymore whether viewers handle it well when no color is set

Something else: should we expose this feature through a update_omero_metadata: bool = False task parameter?
I'd be in favor, since it results into a change of an existing zarr.

Yes, that sounds good. But I'd make it default True. Because the default behavior should be: You use the import OME-Zarr task, you now expect this Zarr file to be Fractal compatible.
If it's false, we could log warnings if there are issues? Or if that results in duplicated / complex code flow: We just log when it's active so that there is some way of knowing what gets added

Here is a proposal for the expected behavior of the "update existing Omero channels" feature - see below.
If we are OK with this behavior, I'll proceed and look at the other aspects of the current issue (which are not part of this comment) -- see next comment.
# Easy case 1: input has no labels
OLD: [{}, {}, {}]
NEW: [{'label': '1', 'wavelength_id': '1'}, {'label': '2', 'wavelength_id': '2'}, {'label': '3', 'wavelength_id': '3'}]

# Easy case 2: input has unique labels
OLD: [{'label': 'A'}, {'label': 'B'}, {'label': 'C'}]
NEW: [{'label': 'A', 'wavelength_id': 'A'}, {'label': 'B', 'wavelength_id': 'B'}, {'label': 'C', 'wavelength_id': 'C'}]

# Easy case 3: input has unique labels, when they are present
OLD: [{'label': 'A'}, {}, {'label': 'C'}]
NEW: [{'label': 'A', 'wavelength_id': 'A'}, {'label': '2', 'wavelength_id': '2'}, {'label': 'C', 'wavelength_id': 'C'}]

# Easy case 4: input has the same label everywhere
OLD: [{'label': 'A'}, {'label': 'A'}, {'label': 'A'}]
NEW: [{'label': 'A', 'wavelength_id': 'A'}, {'label': 'A', 'wavelength_id': 'A-1'}, {'label': 'A', 'wavelength_id': 'A-2'}]

# Case 5: input has the same label everywhere, and it is a number
OLD: [{'label': '1'}, {'label': '1'}, {'label': '1'}]
NEW: [{'label': '1', 'wavelength_id': '1'}, {'label': '1', 'wavelength_id': '1-1'}, {'label': '1', 'wavelength_id': '1-2'}]

# Case 6: input has a mix of presence/absence of labels, and they may be a number
OLD: [{}, {'label': '1'}, {}, {'label': '1'}]
NEW: [{'label': '1', 'wavelength_id': '1-2'}, {'label': '1', 'wavelength_id': '1'}, {'label': '3', 'wavelength_id': '3'}, {'label': '1', 'wavelength_id': '1-1'}]

Next steps, after we are OK with the logic for filling label/wavelength_id attributes:

Assess whether we also need to add values for Window and/or colormap, if missing;
Tackle the case where the Omero channel list is not present and we need to create it from scratch. This is a slightly different feature from updating an existing list, since it first requires reading some metadata directly from the zarr array (i.e. the number of channels)
Tackle the case where the Omero channel list exists in the metadata, but with a different number of channels from the ones in the zarr array. I think that in this case the task should fail, because it's impossible to know which zarr-array channel matches to a given channel in the Omero list.
Decide what to do when the NGFF image has no channel in its multiscales (e.g. a ZYX image). I guess the task fails.
Encapsulate all these new features in an optional block, in the import-ome-zarr task, depending on a boolean task parameter
Make sure logging is appropriate, for all these branches

The proposal sounds good!

When the NGFF image has no c axis (e.g. for a ZYX image), what should we do? Current status: we raise an informative error.

Hmm, even for a single channel image? In that case, that should eventually be supported. But we can also add that later on

Hmm, even for a single channel image? In that case, that should eventually be supported. But we can also add that later on

Agreed, that should be supported - but I think it cannot come before #150.
As far as I understand, we don't support ZYX Zarrs in fractal-tasks-core. Therefore the only option I see is that we'd have to modify the Zarr array, and increase its shape from e.g. 3 axes (ZYX) to 4 axes (CZYX), with the C axis having dimension 1. This means changing the actual data, on top of the NGFF metadata, and IMO it doesn't fit into the "import-ome-zarr" task scope. It would rather fit in a "convert-to-fractal-zarr" task, but then again this would become obsolete with #150.

The proposal sounds good!

FYI, a minor change is needed, to handle the cases where wavelength_id already exists. All examples in https://github.com/fractal-analytics-platform/fractal-tasks-core/issues/578#issuecomment-1770273286 remain the same, but a new one is also included
# Case 7: a mix of missing/existing label and/or wavelength values
OLD: [{'wavelength_id': '1'}, {'label': '1'}, {}, {'label': '1', 'wavelength_id': '3'}]
NEW: [{'wavelength_id': '1', 'label': '1'}, {'label': '1', 'wavelength_id': '1-1'}, {'label': '3', 'wavelength_id': '3-1'}, {'label': '1', 'wavelength_id': '3'}]

The basic principle here is that we always keep existing label or wavelength_id values, and then (with lower priority) we assign all the others.

Regarding color and window attributes
I produced an NGFF image Zarr, with omero metadata
"omero": {
        "channels": [
            {
                "label": "1",
                "wavelength_id": "1"
            }
        ]
    }

and tried to load it with napari-ome-zarr.
Here is the error traceback (with additional debugging info I added):
venv/lib/python3.10/site-packages/napari_ome_zarr/_reader.py:151 transform.<locals>.f
    metadata: {
        'scale': (
            1.0,
            0.1625,
            0.1625,
        ),
        'channel_axis': 0,
        'name': ['1'],
        'visible': [True],
        'contrast_limits': [None],
        'colormap': [],
    } (dict) len=6
Traceback (most recent call last):
  File "/tmp/venv/lib/python3.10/site-packages/napari/layers/utils/stack_utils.py", line 140, in split_channels
    i_kwargs[key] = next(val)
StopIteration

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/tmp/venv/bin/napari", line 8, in <module>
    sys.exit(main())
  File "/tmp/venv/lib/python3.10/site-packages/napari/__main__.py", line 564, in main
    _run()
  File "/tmp/venv/lib/python3.10/site-packages/napari/__main__.py", line 340, in _run
    viewer._window._qt_viewer._qt_open(
  File "/tmp/venv/lib/python3.10/site-packages/napari/_qt/qt_viewer.py", line 953, in _qt_open
    self.viewer.open(
  File "/tmp/venv/lib/python3.10/site-packages/napari/components/viewer_model.py", line 1092, in open
    self._add_layers_with_plugins(
  File "/tmp/venv/lib/python3.10/site-packages/napari/components/viewer_model.py", line 1318, in _add_layers_with_plugins
    added.extend(self._add_layer_from_data(*_data))
  File "/tmp/venv/lib/python3.10/site-packages/napari/components/viewer_model.py", line 1392, in _add_layer_from_data
    layer = add_method(data, **(meta or {}))
  File "/tmp/venv/lib/python3.10/site-packages/napari/utils/migrations.py", line 59, in _update_from_dict
    return func(*args, **kwargs)
  File "/tmp/venv/lib/python3.10/site-packages/napari/components/viewer_model.py", line 902, in add_image
    layerdata_list = split_channels(data, channel_axis, **kwargs)
  File "/tmp/venv/lib/python3.10/site-packages/napari/layers/utils/stack_utils.py", line 142, in split_channels
    raise IndexError(
IndexError: Error adding multichannel image with data shape (1, 2, 2160, 5120).
Requested channel_axis (0) had length 1, but the 'colormap' argument only provided 0 values.

while the image is displayed correctly if I add the property:
    "color": "FFFFFF",

even in the absence of window.
TLDR

I will now add a bit of logic to always include a color property (if missing) in omero channels, as part of import-ome-zarr. I will copy the logic of define_omero_channels (that is, using "00FFFF", "FF00FF", "FFFF00", "808080", "808080", "808080", ..).
I will not add a window attribute for now

For the record, here is the visual difference between including (first screenshot) or not including (second screenshot) a reasonable choice of the window property (while keeping the other properties the same):

[napari 0.4.18, napari-ome-zarr 0.5.2, ome-zarr 0.8.2]

That's great! Adding colormap, but not Window makes sense. I'll review the PR next, but already 👍🏻 on the overall approach


react native video can not play after upgrade<EMAIL_ADDRESS>

the onProgress never execute....but the video placeholder pic is show..

Probably it's problem with sendInputEventWithName that is used across whole library. We are using RCTBubblingEventBlock instead right now and our lib looks working fine. Could any contributor confirm it?

This seems to be the cause https://github.com/react-native-community/react-native-video/blob/6b62119ce0bacfd990cb6ab3b0486feeb603d2be/ios/RCTVideoManager.m#L19
If I change customDirectEventTypes (which was removed in<EMAIL_ADDRESS>to customBubblingEventTypes, things work again. But customBubblingEventTypes is deprecated.
Luckily there seems to be more of a proper fix here https://github.com/react-native-community/react-native-video/pull/381

works for me


Update is including ignore column in update script.

I have a UserId column on my table that is not a primary key and is setup in Modelbuilder to ValueGeneratedOnAdd(). When I update that data the UserId is part of my update script when I run SQL profiler and I get an exception: "Cannot update identity column 'UserId'."
Steps to reproduce
Create a Model with property, not the primary key.
public int UserId { get; private set; }

OnModelCreating: Add
Property(p => p.UserId)
        .ValueGeneratedOnAdd();

and
 (p => p.UserId)
        .Metadata.BeforeSaveBehavior = PropertySaveBehavior.Ignore;

See on model creating code below:
  protected override void OnModelCreating(ModelBuilder builder)
    {
      base.OnModelCreating(builder);

      builder.Entity<ApplicationUser>(b =>
      {
        b.Property(p => p.UserId)
        .ValueGeneratedOnAdd();

        b.Property(p => p.UserId)
        .Metadata.BeforeSaveBehavior = PropertySaveBehavior.Ignore;
      });
    }

Further technical details
EF Core version: 2.2.6-servicing-10079
Database provider: Microsoft.EntityFrameworkCore.SqlServer
Target framework: .NET Core 2.2
Operating system: Windows 10
IDE: Visual Studio 2019 16.3.5

See script generated: @p18 should not be in script
exec sp_executesql N'SET NOCOUNT ON;
UPDATE [AspNetUsers] SET [AccessFailedCount] = @p0, [ConcurrencyStamp] = @p1, [Email] = @p2, [EmailConfirmed] = @p3, [FirstName] = @p4, [IsActive] = @p5, [LastName] = @p6, [LockoutEnabled] = @p7, [LockoutEnd] = @p8, [NormalizedEmail] = @p9, [NormalizedUserName] = @p10, [PasswordHash] = @p11, [PhoneNumber] = @p12, [PhoneNumberConfirmed] = @p13, [SDWPassword] = @p14, [SDWSalt] = @p15, [SecurityStamp] = @p16, [TwoFactorEnabled] = @p17, [UserId] = @p18, [UserName] = @p19
WHERE [Id] = @p20 AND [ConcurrencyStamp] = @p21;
SELECT @@ROWCOUNT;
',N'@p20 nvarchar(450),@p0 int,@p1 nvarchar(4000),@p21 nvarchar(4000),@p2 nvarchar(256),@p3 bit,@p4 nvarchar(150),@p5 bit,@p6 nvarchar(150),@p7 bit,@p8 datetimeoffset(7),@p9 nvarchar(256),@p10 nvarchar(256),@p11 nvarchar(4000),@p12 nvarchar(4000),@p13 bit,@p14 nvarchar(4000),@p15 nvarchar(4000),@p16 nvarchar(4000),@p17 bit,@p18 int,@p19 nvarchar(256)',@p20=N'477c7081-6c16-4853-a78a-5015c371046a',@p0=1,@p1=N'2497b6cf-f3c5-4f0b-840b-d6e3dad05283',@p21=N'db258de8-6b70-4924-b903-23fba479ad01',@p2=N'jspringer@singular.co.za',@p3=1,@p4=N'Julian',@p5=1,@p6=N'Springer',@p7=1,@p8=NULL,@p9=N'JSPRINGER@SINGULAR.CO.ZA',@p10=N'JSPRINGER@SINGULAR.CO.ZA',@p11=N'AQAAAAEAACcQAAAAEJ298fiBBXoEcuY+waWKhKSP5eHediUYzRhV+SDpfhHa3VaPsOb6vRxJc0nHqgieyA==',@p12=NULL,@p13=0,@p14=NULL,@p15=NULL,@p16=N'ICH5TZU2NGECK7FL5NFVAQ7N5LQVF6KK',@p17=0,@p18=1<EMAIL_ADDRESS>

@AndreBarnard Please post a small, runnable project/solution or complete code listing that demonstrates the behavior you are seeing so that we can investigate.

EF Team Triage: Closing this issue as the requested additional details have not been provided and we have been unable to reproduce it.
BTW this is a canned response and may have info or details that do not directly apply to this particular issue. While we'd like to spend the time to uniquely address every incoming issue, we get a lot traffic on the EF projects and that is not practical. To ensure we maximize the time we have to work on fixing bugs, implementing new features, etc. we use canned responses for common triage decisions.


Devcontainer docker image build failure

Title: Can not create a fresh Dev container
Description:
When clicking "Reopen in Dev container mode", the image build fails.
Expectation is that vscode should be able to launch our repo in Dev container mode.
Repro steps:
Delete docker image for vscode devcontainer OR update the sha here : https://github.com/envoyproxy/envoy/blob/43a3a3eec30f48ee1cd68f6a5949dce2a6d70aa4/.devcontainer/Dockerfile#L1 to retrigger a docker image build
Logs:
>I➜  .devcontainer git:(main) docker build .
[+] Building 15.8s (5/5) FINISHED
 => [internal] load build definition from Dockerfile                                                                                0.0s
 => => transferring dockerfile: 935B                                                                                0.0s
 => [internal] load .dockerignore                                                                                0.0s
 => => transferring context: 2B                                                                                0.0s
 => [internal] load metadata for gcr.io/envoy-ci/envoy-build:b0ff77ae3f25b0bf595f9b8bba46b489723ab446                                                                                0.9s
 => CACHED [1/2] FROM gcr.io/envoy-ci/envoy-build:b0ff77ae3f25b0bf595f9b8bba46b489723ab446@sha256:d3719606a009d1cc256389eed268b2f49964ff310d4a7bda11998b558af22d24                                    0.0s
 => ERROR [2/2] RUN apt-get -y update   && apt-get -y install --no-install-recommends libpython2.7 net-tools psmisc vim 2>&1   && groupadd --gid 501 vscode   && useradd -s /bin/bash --uid 501 --g  14.8s
------
 > [2/2] RUN apt-get -y update   && apt-get -y install --no-install-recommends libpython2.7 net-tools psmisc vim 2>&1   && groupadd --gid 501 vscode   && useradd -s /bin/bash --uid 501 --gid 501 -m vscode -G pcap -d /build   && echo vscode ALL=(root) NOPASSWD:ALL > /etc/sudoers.d/vscode   && chmod 0440 /etc/sudoers.d/vscode:
#5 0.391 Get:1 https://download.docker.com/linux/ubuntu focal InRelease [57.7 kB]
#5 0.494 Get:2 https://download.docker.com/linux/ubuntu focal/stable amd64 Packages [26.4 kB]
#5 0.804 Get:3 http://security.ubuntu.com/ubuntu focal-security InRelease [114 kB]
#5 0.971 Get:4 http://ppa.launchpad.net/deadsnakes/ppa/ubuntu focal InRelease [18.1 kB]
#5 1.530 Get:5 http://archive.ubuntu.com/ubuntu focal InRelease [265 kB]
#5 1.599 Get:6 http://ppa.launchpad.net/deadsnakes/ppa/ubuntu focal/main amd64 Packages [29.5 kB]
#5 1.678 Get:7 http://packages.cloud.google.com/apt cloud-sdk InRelease [6,361 B]
#5 1.756 Err:7 http://packages.cloud.google.com/apt cloud-sdk InRelease
#5 1.756   The following signatures couldn't be verified because the public key is not available: NO_PUBKEY B53DC80D13EDEF05
#5 1.967 Get:8 http://security.ubuntu.com/ubuntu focal-security/main amd64 Packages [2,436 kB]
#5 2.541 Get:9 https://apt.kitware.com/ubuntu focal InRelease [15.5 kB]
#5 2.849 Err:9 https://apt.kitware.com/ubuntu focal InRelease
#5 2.849   The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 42D5A192B819C5DA
#5 2.954 Get:10 http://archive.ubuntu.com/ubuntu focal-updates InRelease [114 kB]
#5 4.539 Get:11 http://security.ubuntu.com/ubuntu focal-security/multiverse amd64 Packages [27.7 kB]
#5 4.547 Get:12 http://security.ubuntu.com/ubuntu focal-security/restricted amd64 Packages [1,879 kB]
#5 5.275 Get:13 http://security.ubuntu.com/ubuntu focal-security/universe amd64 Packages [982 kB]
#5 5.611 Get:14 http://archive.ubuntu.com/ubuntu focal-backports InRelease [108 kB]
#5 6.090 Get:15 http://archive.ubuntu.com/ubuntu focal/main amd64 Packages [1,275 kB]
#5 7.771 Get:16 http://archive.ubuntu.com/ubuntu focal/universe amd64 Packages [11.3 MB]
#5 11.16 Get:17 http://archive.ubuntu.com/ubuntu focal/restricted amd64 Packages [33.4 kB]
#5 11.16 Get:18 http://archive.ubuntu.com/ubuntu focal/multiverse amd64 Packages [177 kB]
#5 11.19 Get:19 http://archive.ubuntu.com/ubuntu focal-updates/multiverse amd64 Packages [31.2 kB]
#5 11.19 Get:20 http://archive.ubuntu.com/ubuntu focal-updates/restricted amd64 Packages [2,003 kB]
#5 11.44 Get:21 http://archive.ubuntu.com/ubuntu focal-updates/universe amd64 Packages [1,284 kB]
#5 12.02 Get:22 http://archive.ubuntu.com/ubuntu focal-updates/main amd64 Packages [2,909 kB]
#5 13.92 Get:23 http://archive.ubuntu.com/ubuntu focal-backports/main amd64 Packages [55.2 kB]
#5 14.10 Get:24 http://archive.ubuntu.com/ubuntu focal-backports/universe amd64 Packages [28.6 kB]
#5 14.12 Reading package lists...
#5 14.77 W: GPG error: http://packages.cloud.google.com/apt cloud-sdk InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY B53DC80D13EDEF05
#5 14.77 E: The repository 'http://packages.cloud.google.com/apt cloud-sdk InRelease' is not signed.
#5 14.77 W: GPG error: https://apt.kitware.com/ubuntu focal InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 42D5A192B819C5DA
#5 14.77 E: The repository 'https://apt.kitware.com/ubuntu focal InRelease' is not signed.
------
executor failed running [/bin/sh -c apt-get -y update   && apt-get -y install --no-install-recommends libpython2.7 net-tools psmisc vim 2>&1   && groupadd --gid $USER_GID $USERNAME   && useradd -s /bin/bash --uid $USER_UID --gid $USER_GID -m $USERNAME -G pcap -d /build   && echo $USERNAME ALL=\(root\) NOPASSWD:ALL > /etc/sudoers.d/$USERNAME   && chmod 0440 /etc/sudoers.d/$USERNAME]: exit code: 100

Workaround:
Tried manually importing keys etc. The following worked for me
diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile
index 26a7dd543c..0148847ae9 100644
--- a/.devcontainer/Dockerfile
+++ b/.devcontainer/Dockerfile
@@ -8,9 +8,10 @@ ENV BUILD_DIR=/build
 ENV ENVOY_STDLIB=libstdc++

 ENV DEBIAN_FRONTEND=noninteractive
-RUN apt-get -y update \
-  && apt-get -y install --no-install-recommends libpython2.7 net-tools psmisc vim 2>&1 \
-  # Create a non-root user to use if preferred - see https://aka.ms/vscode-remote/containers/non-root-user.
+RUN curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key --keyring /usr/share/keyrings/cloud.google.gpg add -
+RUN apt-key adv --keyserver keyserver.ubuntu.com --recv  42D5A192B819C5DA \
+  && apt-get -y update \
+  && apt-get -y install --no-install-recommends net-tools psmisc vim 2>&1 \
   && groupadd --gid $USER_GID $USERNAME \
   && useradd -s /bin/bash --uid $USER_UID --gid $USER_GID -m $USERNAME -G pcap -d /build \
   # [Optional] Add sudo support for non-root user

i was wondering how long it would take before someone would raise this 8/
we have been working around these issues in Envoy as here https://github.com/envoyproxy/envoy/blob/43a3a3eec30f48ee1cd68f6a5949dce2a6d70aa4/examples/shared/build/Dockerfile#L5-L8
the underlying problem is that the envoy build image needs to be updated - https://github.com/envoyproxy/envoy-build-tools/issues/193

im wondering if we can use a similar hack for the devcontainer

I would happy for submit a PR 😄

great - that would be really helpful

@Pawan-Bishnoi i just raised a PR to bump the build images - it might be worth waiting and we can just update the images - fetching the key again is a pretty hacky workaround

https://github.com/envoyproxy/envoy-build-tools/pull/194

got it! Yeah this makes much more sense actually 😃

#25089

should be resolved by https://github.com/envoyproxy/envoy/pull/25089


GPUImage display if alpha blended images failing on simulator

This is not so much a bug report as a request for help.
My app takes three images, blurs them, and then alpha blends them together. It works wonderfully, GPUImage is a fantastic library.
However, when another developer runs the code on his simulator, the image appears blown out. The problem is definitely most apparent on light colors and areas of white. This is only on the simulator. My simulator displays the images fine... most of the time.(See below)
I have managed to replicate this on a separate machine, it is definitely not unique to the other developers' machine.
15" retina MBP - seems to display wrong 100% of the time.
15" 2011 MBP - seems to display wrong 100% of the time.
Retina 27" iMac - seems to display correctly, EXCEPT in one case. If I clean everything, delete Derived Data, etc. and then run the GPUImage version of the app, it displays wrong. However, if I revert to a CoreImage based version of the app I had written previously, run it (displays fine) and THEN go back to the GPUImage version and run it, it displays great. (This was the way my normal development flow worked, so I never saw the problem until the other developer brought it up).
Any supported physical iOS (7 or 8) device - works great, 100% of the time.
Has anyone seen anything similar to this? I know the simulator is VERY far from perfect, but it's disconcerting that it displays SOME of the time, and I want to make sure this is not masking some bug that may bite me when the app is in wider distribution on devices.
Thanks.

The Simulator emulates OpenGL ES shaders in software, and doesn't always get the precision, etc. exactly the same as actual hardware. It's also incredibly slow compared to current hardware, even on top-of-the-line Macs.
To be honest, I rarely test any of this in the Simulator because of the lack of a camera, its broken handling of movies, and the above.

Thanks Brad, you really have no idea how much better that makes me feel. We will simply stop testing on the simulator at all. Thank you.


Add @johnbryan to code owners

John will be involved in the development of this library over the next couple months.
cc/ @bogdandrutu

Codecov Report

Merging #60 into master will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff           @@
##           master     #60   +/-   ##
======================================
  Coverage    97.1%   97.1%
======================================
  Files          25      25
  Lines         588     588
  Branches       71      71
======================================
  Hits          571     571
  Misses         17      17

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 842fc5c...caed953. Read the comment docs.


simplifying download/upload logic

to @Ryxias
cc: @airbnb/binaryalert-maintainers
Background
The Carbon Black download logic was more complicated than necessary. The Binary model provides a file-like-object as file that can be read from directly.
Changes

Updating the download/upload logic to use a streaming file read/write to perform a direct upload to s3.
This removes the need to store any data locally, also removing the need to "shred" the data.

Testing
Update to unit test to check new logic.

Coverage decreased (-0.1%) to 91.111% when pulling d5c71e2229d66a5c510f2f42adf05377bd36b124 on ryandeivert-update-download-logic into 754a51086ca9b0a2b250292dc8c3844c908d76b6 on master.


🐛 Fix apidiff ci job

What this PR does / why we need it:
Fix CI script for apidiff, now it's similar to https://github.com/kubernetes-sigs/cluster-api/blob/main/scripts/ci-apidiff.sh
Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #

/lgtm

/approve


Did you perform data normalization in the experiment of your paper?

During the experiment on SWaT and WADI data, did you use normalization techniques such as min-max normalization?

Yes, we did. We used the min-max normalization in the preprocessing. You could refer to https://github.com/d-ailin/GDN/tree/main/scripts for more details.

Thank you for your reply.


What do you consider a good dataset size/rows for quantization ?

Wondering what would be a decent size for the dataset could be for the model to be quantized, I am looking at a model like LLama2-7B. Any help is appreciated

If you want a rough ballpark, wikitext-2 is just under 50k lines at around 10mb. You could probably get away with a lot less though.


status always be offline at some phones

App run at a phone with Android version 4.2.2, after phone screen turn off, the status always become offline, cant notice only messages or events.

Could you send a bug report ?

Just how to send a bug report ?

Notice that you might have installed a battery saver application which turns the connection off.

I would want to know what connection which keeps the riot online? Or what services is used for this?
When the phone screen turn off, I am sure that the Intenet aceess is OK, just because other IM App works well.

The android user is seen as offline because the application has been put in background.
The device receives push notifications if you define some rules to get them.
You can customize them in the global settings (the webclient has a better UI)

wjhtinger, i'm still waiting after your bug report.

The  bug report has been sent, sorry for some delay

wjhtinger,
could you update your client and send a new bug report ?
Your latest ones were empty.
Anyway, any user will be seen offline when the application is put in background.
But, even when putting in background, you should receive some notifications if the dedicated pushes settings have been properly set.

I use the latest version(6.4), find the report email attachment is always empty. I tested the version(5.2) is OK(4 attachments). Maybe I need to submit a issue for this?
About the offline issue, I tested four diffrent android phone, only that one has this issue. About 10 minutes after screen is locked, the status become offline, and cant give any notifications. I comfirmed that the settings is OK.

I find another phone has this problem now.

I have found the root cause now, just because that phone will turn off the WiFi for power saving in standby.
Close the issue.


Investigate caching fasder data in shell memory to reduce calls to mapfile

The prompt hook that runs with every shell command invokes the mapfile builtin to reload the fasder data from the file, set up an array, and run the data through the populate...() function every time. This is an almost-intractable performance hit. (Timing experiments indicate the two former steps are the real issue.) One possible alternative is to cache the data in shell memory and to access the data files only occasionally. Essentially we would like to persist the data across separate calls to fasder without relying so much on file I/O.
The idea is to store a copy of the data in an environment variable that we would populate once during shell initialization, by adding a command to the "fasder --init" handler that would load the data the long, hard way. After that, we would scan the data from the shell environment whenever we need it, manipulate it, and perform the flush-to-file once every so often.
Depending on usage patterns, the data can grow large enough that storing it in an environment variable might present some systems issues. See for example this discussion and also this one. Fortunately the data does not grow quickly, but if issues do crop up in the long run we see several possible means for the user to address this:

Manually identify unwanted entries and "fasder --delete" them
Run a "fasder --clean" action which would remove entries referring to non-existent or duplicate objects
Reduce the configured value of FASD_MAX so that old entries will fall off the radar more quickly

Hence the overall idea seems feasible. OTOH, fasder is fast enough as-is for my taste, so I regard this as simply a nice-to-have.

This idea cannot be implemented exactly as stated since we cannot alter the shell environment from within a running script. However, it is feasible to update the script-local copy of the environment with the cumulative changes to the fasder data every time the script runs. We'd simply need to load the changes every time (probably with a call to mapfile), apply them to the "constant" data and save them again after we've processed the most recent shell command.
One argument in favor of this is that the changes will usually be much smaller than the "constant" data whenever there's enough of the latter to even worry about it. The new call to mapfile which replaces the older one would face a much smaller burden, hence a time savings is likely. However, this is offset by the need for an extra file write each time in order to re-save the cumulative changes. I don't think the effort required is justified.


probably a dumb question

how do i launch my own server instance? i was hoping to run on my orange pi 5 ....i mean is it nodejs or do i just drop the files in my www folder? (i dont know how to use node really)

Hello there. During development I used my own server instance to test the game. You can clone this repository using the clone command, go into that directory/folder, and run node server.js.

cool thank you

I took a look through the server.js code and it looks like it could be run fully static. So would hosting it through something like python3 -m http.server 8080 work?


Generate backup codes

Hi Rob! Nice work :smiley:
Wondering how I can generate backup codes (that are never expired).
I use ->getCode($secret); but doesn't after 30sec, 1min it doesn't work or never worked. Any idea why and how to fix it?
Thx!

You should just create X-number of random strings (or numbers) as backup code and store (salted hashes of) them somewhere safe. If the entered code doesn't match you check the input against the X hashes you stored.


GPUParticles3D - changing the mesh from a non-trail-mesh to a trail-mesh makes particles disappear

Tested versions
v4.2.2.stable.mono.official [15073afe3]
System information
Godot v4.2.2.stable.mono - Windows 10.0.22631 - Vulkan (Forward+) - dedicated NVIDIA GeForce RTX 4080 (NVIDIA; <IP_ADDRESS>99) - AMD Ryzen 9 7950X3D 16-Core Processor (32 Threads)
Issue description
For a GPUParticles3D if you have trails enabled and change the mesh in a draw pass from a non-trail mesh (e.g. Sphere) to a trail mesh, the particles stop rendering. To fix this you need to either change the trail length or disable and re-enable trails. This can be very confusing for someone new to particle systems as the particle system seems to suddenly stop working.
https://github.com/user-attachments/assets/3ab9711e-b9c4-4d29-965d-99c038924cc2
Steps to reproduce

Create a simple GPUParticles3D, set up some spawning pattern (I used ring, but it doesn't really matter).
Set a sphere as the only draw pass.
Enable trails
Change the sphere to some trail mesh

The particles now disappear but instead the particle system should render using the new trail mesh.
Minimal reproduction project (MRP)
N/A

For me trail meshes dont seem to work at all. I followed step by step the tutorial in the documentation here. Even after I turn off and on again trails enabled, it doesnt seem to be doing anything. Tested in both Godot 4.2 and 4.3.


Add 0x80180014 to the list (device-restrictions)

Please add the following error code to the list:

Error code: 80180014
Server message: Unknown error code: 0x80180014

May related to: https://techcommunity.microsoft.com/t5/microsoft-intune/error-80180014-due-to-device-restrictions-for-windows-autopilot/m-p/1155809

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

ID: b9f81d74-8dcb-e644-9647-0d1d0817f975
Version Independent ID: e249cc9d-2120-8868-dbca-bc3b85f38b4b
Content: Troubleshoot hybrid Azure Active Directory-joined devices - Microsoft Entra
Content Source: articles/active-directory/devices/troubleshoot-hybrid-join-windows-current.md
Service: active-directory
Sub-service: devices
GitHub Login: @MicrosoftGuyJFlo
Microsoft Alias: joflore

@weyCC81
Thanks for your feedback! We will investigate and update as appropriate.

Hi @weyCC81
Could please check the below document for your reference. Here is separate link provided for 0x80180014 error.
https://learn.microsoft.com/en-us/autopilot/troubleshoot-device-enrollment

@weyCC81
We are going to close this thread, if there are any further questions regarding the documentation, please tag me in your reply and we will be happy to continue the conversation.
#Please-close


4.3: Android Editor: Unable to Drag and Drop Files from File System

Tested versions
v4.3.stable.official [77dcf97d8]
System information
Godot v4.3.stable - Android - GLES3 (Compatibility) - Adreno (TM) 610 -  (8 Threads)
Issue description
In Godot Android Editor file can't be drag and drop from file system. Like if i try to drag and image/textures. It can't be drag.
releted:
https://github.com/godotengine/godot/issues/100308#issue-2735639155
Steps to reproduce
Toggle file system.
try to drag any file
Minimal reproduction project (MRP)
N/A

@llama-nl Could you please confirm if this feature was available in previous versions?

Yeah, The feature was available in 4.2.2

This issue is likely caused by PR https://github.com/godotengine/godot/pull/94422.
As a workaround, the Drag & Drop functionality still works if you move the Filesystem to the bottom and use it in a layout other than the tree view.

I known that. file system moving feature is not available in 4.3 so we can to look forward for a fix.


Remove Facebook2OAuth2 and Facebook2AppOAuth2 backends

Closes #1045. They are using an endpoint that doesn’t exist anymore,
and the main backends are now more up to date.

I've ported this PR into social-core and social-docs.
Thanks!


Vera integration creates horrible entity IDs

Home Assistant release with the issue: All (currently at 0.67)

Last working Home Assistant release (if known):
Operating environment (Hass.io/Docker/Windows/etc.): Docker on Linux

Component/platform: Vera

Description of problem:
The Vera component creates entity IDs that end with the Vera internal object ID (e.g. switch.living_room_45). If a device is re-paired with Vera, all automations and related items in HA are broken and have to be edited to work again.  Given that HA can handle renaming duplicate entity identifiers, the component should just create them as named.
Problem-relevant configuration.yaml entries and (fill out even if it seems unimportant):

Traceback (if applicable):

Additional information:
This would be a fantastic next candidate for the entity database, which would solve this and other problems.

Still a problem.

See also #14335

Solved, see #17450

#17450 lets you change the very entity_ids


Seems to be unusable? Or my own problem

`
[22:19:42 INF][OpenMod.Core.Commands.CommandExecutor] Actor player/Yzzzzz<PHONE_NUMBER>4111687) has executed command "dummy create"
NullReferenceException: Object reference not set to an instance of an object
at SDG.Unturned.PlayerSkills.mastery (System.Int32 speciality, System.Int32 index) [0x00006] in :0
at SDG.Unturned.PlayerStance.GetStealthDetectionRadius () [0x00192] in :0
at SDG.Unturned.PlayerStance.Update () [0x002ff] in :0
NullReferenceException: Object reference not set to an instance of an object
at SDG.Unturned.PlayerInput.FixedUpdate () [0x00620] in :0
[22:19:42 ERR][OpenMod.Core.Commands.CommandExecutor] Exception occured on command "dummy create" by actor player/Yzzzzz<PHONE_NUMBER>4111687)
System.MissingFieldException: Field not found: SDG.Unturned.ClientMethodInfo[] SDG.Unturned.NetReflection.clientMethods Due to: Could not find field in class
at SDG.Unturned.NetMessages.SendMessageToClient (SDG.Unturned.EClientMessage index, SDG.NetTransport.ENetReliability reliability, SDG.NetTransport.ITransportConnection transportConnection, SDG.Unturned.NetMessages+ClientWriteHandler callback) [0x0002c] in :0
at SDG.Unturned.Provider.accept (SDG.Unturned.SteamPlayerID playerID, System.Boolean isPro, System.Boolean isAdmin, System.Byte face, System.Byte hair, System.Byte beard, UnityEngine.Color skin, UnityEngine.Color color, UnityEngine.Color markerColor, System.Boolean hand, System.Int32 shirtItem, System.Int32 pantsItem, System.Int32 hatItem, System.Int32 backpackItem, System.Int32 vestItem, System.Int32 maskItem, System.Int32 glassesItem, System.Int32[] skinItems, System.String[] skinTags, System.String[] skinDynamicProps, SDG.Unturned.EPlayerSkillset skillset, System.String language, Steamworks.CSteamID lobbyID, SDG.Unturned.EClientPlatform clientPlatform) [0x001d0] in :0
at Dummy.Services.DummyUserProvider.AddDummyAsync (System.Nullable1[T] id, System.Collections.Generic.HashSet1[T] owners, OpenMod.Unturned.Users.UnturnedUser userCopy, Dummy.Models.ConfigurationSettings settings) [0x0077c] in <67a02dbdc0a14d1ea645c492399ae60a>:0
at Dummy.Commands.CommandDummyCreate.OnExecuteAsync () [0x000ff] in <67a02dbdc0a14d1ea645c492399ae60a>:0
at OpenMod.Core.Commands.CommandExecutor.ExecuteAsync (OpenMod.API.Commands.ICommandActor actor, System.String[] args, System.String prefix) [0x0034c] in /_/framework/OpenMod.Core/Commands/CommandExecutor.cs:92
NullReferenceException: Object reference not set to an instance of an object
at SDG.Unturned.PlayerInput.FixedUpdate () [0x00620] in :0
NullReferenceException: Object reference not set to an instance of an object
at SDG.Unturned.PlayerInput.FixedUpdate () [0x00620] in :0
NullReferenceException: Object reference not set to an instance of an object
at SDG.Unturned.PlayerInput.FixedUpdate () [0x00620] in :0
NullReferenceException: Object reference not set to an instance of an object
at SDG.Unturned.PlayerInput.FixedUpdate () [0x00620] in :0
NullReferenceException: Object reference not set to an instance of an object
at SDG.Unturned.PlayerInput.FixedUpdate () [0x00620] in :0
NullReferenceException: Object reference not set to an instance of an object
at SDG.Unturned.PlayerSkills.mastery (System.Int32 speciality, System.Int32 index) [0x00006] in :0
at SDG.Unturned.PlayerStance.GetStealthDetectionRadius () [0x00192] in :0
at SDG.Unturned.PlayerStance.Update () [0x002ff] in :0
NullReferenceException: Object reference not set to an instance of an object
at SDG.Unturned.PlayerInput.FixedUpdate () [0x00620] in :0
NullReferenceException: Object reference not set to an instance of an object
at SDG.Unturned.PlayerInput.FixedUpdate () [0x00620] in :0
NullReferenceException: Object reference not set to an instance of an object
`

Fixed a long time ago


Use of uninitialized value in substitution iterator at pgbadger line 19178

Hello!
using last version on git with incremental mode on some GCP cloudsql logs I get this error :
"Use of uninitialized value in substitution iterator at pgbadger line 19178".
Trying to understand it, it is related to function print_tempfile_report :
it firstly loop on all normalyzed_info to grab all queries which have temp files, next during creation of report :
we have this line : (line 11326)
$details .= "Info: $top_tempfile_info{$curdb}[$i]->[7]" if ($top_tempfile_info{$curdb}[$i]->[7]);
which lead to a top_tempfile_info{$curdb} initially set to 20 elements like prerequisite to be upsized to the number of queries with temp files, but with only "empty" elements added.
These empty elements are next responsible of the substitution error.
I'm not perl expert and don't really understand why we observe this upsizing of the array and I only found this with some basic print debugging, and therefore I'm not sure on the best way to really fix it.
For now, I simply modified the line to $details .= "Info: $top_tempfile_info{$curdb}[$i]->[7]" if ($i<20 && $top_tempfile_info{$curdb}[$i]->[7]);
but it's probably not the best way!

I think you are not using latest development code, ine 19178 is not related to what you are pointing at all. To get this code use git clone or
wget https://github.com/darold/pgbadger/archive/refs/heads/master.zip
unzip master.zip
cd pgbadger-master/
perl Makefile.PL
make && sudo make install

I'm using the last one. And yes, line 19178 is directly related to while ( $self->{ 'content' } =~ s/AAKEYWCONST(\d+)AA/$self->{ 'keyword_constant' }{$1}/s ) { };
But I investigated about the real cause and it sounds to lead to what I said about function print_tempfile_report. (in particular like with my "fix" it works well).

Ok got it, commit 20c0093 might fix this issue.


Fix error messages for :type/:class used in expressions

Turns out after preventing high level use of :type/:class as values. Many expression situations allowed them. This PR takes care of many of the leftovers. There's probably more out there.

@chrisbra @yegappan If it is relevant, when considering if this PR should make it into vim9.1, this PR is all about error messages. It was delayed a few days by discovering/fixing an old bug that interfered.

Hi Ernie,
On Wed, Dec 20, 2023 at 10:40 AM errael @.***> wrote:

@chrisbra https://github.com/chrisbra @yegappan
https://github.com/yegappan If it is relevant, when considering if this
PR should make it into vim9.1, this PR is all about error messages. It was
delayed a few days by discovering/fixing an old bug that interfered.

The changes look good to me.
Regards,
Yegappan

thanks, applied


Add block_box to benches

This makes iterate_* benches far more stable and less code layout dependent.

I'm not sure this the right place for it. We want the compiler to be able to aggressively optimize the interior of the loop; if it can't, that means the iterator code is probably too complex and obscuring things. In the benchmarks we should only be concerned about work being deleted entirely, rather than just rearranged, and I haven't seen evidence that. If we did see that it could probably be handled with a single black_box application to the entire world after the loop.
Separately, maybe we should use the now stable and presumably more reliable std::hint version?


Fix use closed(freed) connections

When failing to add tasks into the thread manager, we close the
corresponding connections, then set the flags of these connections,
which have been already freed.

I had tried to find my password, but nothing was received. It seems that Jira doesn't work properly with gmail. Could you help me?

@jeking3 you are correct. In fact, we had found this issue, and we should do such things at all the error path when notifying the io threads. I will address this issue in a separated patch.
At the same time, we should setIdle() before calling addTask(). Because the added task maybe expired and destroyed by other threads due to failing to notify IO threads, and the latter setIdle() may corrupt the memory.

This patch as-is causes a counting error, so if you can amend this one with those changes we can get them all fixed together.

@xiaosuo just a reminder, if you have additional fixes (it sounds like you do)

@jeking3 Did you mean that we should fix all issues about the number of active processors in this patch instead of a separated one?

If you have the fixes let's get them all in together.  The current fix is not complete and causes counting errors, which lead to - I don't know...

I think this patch doesn't introduce any inconsistency. And the correctness of the number of active processors deserves another separated patch. We'd better not mix fixes into a huge patch.
BTW: Fixing the number of active processors may depend on my other patches. So I prefer to submit it after all my patches are merged.

Please rebase this branch against upstream/master and force push to kick off a new build.  I would like to see the CI build pass (or get much closer than it is now) before merging.

THRIFT-4160


geoJSON layer accepts invalid polygon object

Expected behavior
A geojson polygon feature with less than 4 coordinates must raise error.
Current behavior
Leaflet accepts such feature as a valid geojson object.
Environment

Leaflet version: 1.4.0
Browser (with version): N/A
OS/Platform (with version): N/A

Additional context
A geojson polygon feature must have at least four coordinates, and the first and last items in the coordinates list must be the same. So the following object is considered invalid:
{
  "type": "Polygon",
  "coordinates": [[[-0.5, -0.5], [0.5, 0.5], [-0.5, -0.5]]]
}

But leaflet treats it as a valid object.
Minimal example reproducing the issue
See scripts.js in the this example: https://plnkr.co/edit/IpLcBvzV2D1akpzlKiA5?p=preview

I looked at the code, the current behavior occurs because L.Polygon allows you to pass polygon with 3 points. There is a comment in the code:
 Note that points you pass when creating a polygon shouldn't have an additional last point equal to the first one — it's better to filter out such points.

I agree with you and think geoJSON layer should raise error if geojson is invalid.
I don't really know how to check if geoJson is valid, so if someone can add references it will be nice.

I looked at the code, the current behavior occurs because L.Polygon allows you to pass polygon with 3 points. There is a comment in the code:
 * Note that points you pass when creating a polygon shouldn't have an additional last point equal to the first one — it's better to filter out such points.

I agree with you and think geoJSON layer should raise error if geojson is invalid.
I don't really know how to check if geoJson is valid, so if someone can add references it will be nice.

Closing because https://github.com/Leaflet/Leaflet/pull/6507#issuecomment-462133506


Middleware implementation

Just wondering if anyone has successfully implemented Redux-esque middleware in an application using baobab-react.
Currently I am using a emmett instance to fire events manually, but it would be nice to be able to listen to dispatch-ed actions without needing to add extra code.
One solution I was considering is to override the dispatch implementation so an event is automatically emitted, and then add an extra method to the Baobab object to allow observers to subscribe to specific actions.
Any advice here? Is there another option that doesn't require modification of baobab and baobab-react?
(If there is interest, I may try to submit a PR implementing this idea).

Hello @soulprovidr,
Baobab indeed only lets you listen to any change on the tree at each tick, so if you need to know which specific action was fired it is a bit tricky indeed.

One solution I was considering is to override the dispatch implementation so an event is automatically emitted, and then add an extra method to the Baobab object to allow observers to subscribe to specific actions.

Your solution seems to be a good one that does not require to change anything to the libraries.

Hi @Yomguithereal,
Thanks for your feedback, I will try to add this functionality without modifying the library code.
For now I will close this issue and re-open it if I need more direction.
👍


implement Dictionary value runtime type checking

To make things simple, I modelled the type behaviour on TypeScript’s:

JS objects that are not an array are a string dictionary
JS objects with keys that can be casted to number are also a number dictionary
JS arrays are number dictionaries

By default dictionaries are string based, but can optionally be number based with the second parameter.
The PR is feature complete as far as I can see.

Thanks for the contribution, looks great!


Getting SIGSEGV when debugging with gdb

Hi,
I'm creating a couple of applications and I believe one of the dependencies I'm using depends on this library.  It seems that go-stack/stack causes a SIGSEGV error with gdb.
As I was trying to debug one of my applications, I got stuck with this error. I created two gists (gist1 and gist2) to showcase what's happening:

In gist1  I've simply copied and pasted the channels example from golang docs. After compiling the program with go build -gcflags "-N -l" main.go I started gdb with gdb main and was able to use it normally.
In  gist2 I've changed the code to include the example in stack README file. Compiled the code go build -gcflags "-N -l" main.go and started gdb. After setting a breakpoint and running the code, gdb shows the error Thread 1 "main" received signal SIGSEGV, Segmentation fault. 0x000000000046c898 in github.com/go-stack/stack.findSigpanic.func1 (p=0x0, &fn=0xc820041f10, ~r0=0) at /opt/gopath/src/github.com/go-stack/stack/stack.go:228

Both versions of this example code are statically linked. stack library is built to master branch (not vendored).
Versions:
$ go version
go version go1.6 linux/amd64

$ gdb -v
GNU gdb (GDB) 7.11
Copyright (C) 2016 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-pc-linux-gnu".

@resilva87 Thanks for filing an issue. The SIGSEGV you are seeing is quite intentional. You should be able to safely ignore it.
Justification
You can see the code that causes the SIGSEGV in the function findSigpanic. The code handles the signal with a deferred recover and continues gracefully. This code path is only executed once at program startup in order to cache the *runtime.Func for runtime.sigpanic.
runtime.sigpanic is important when processing stack traces returned from runtime.Callers because of an idiosyncrasy of how the Go runtime reports stack frames. This idiosyncrasy has always been present, but was first documented in Go 1.4. The documentation was updated in commit https://github.com/golang/go/commit/8db71d4ee89a505c375b550eb8fb8cc33bbabc03.
Unfortunately the *runtime.Func for runtime.sigpanic is not directly available to code outside of the runtime package. findSigpanic acquires it by dereferencing a nil pointer as a means to generate a stack trace that contains an entry for runtime.sigpanic.
Future changes
The just released Go 1.7 includes a new API for processing stack frames that handles the idiosyncrasies of runtime.FuncForPC for us. At some point I will update this package to use the new API when built using Go 1.7+, in which case it will no longer need to trigger a SIGSEGV at startup.

@ChrisHines that sounds great. Actually what I missed is that you can safely skip this signal in gdb
http://stackoverflow.com/questions/23362984/gdb-nostop-sigsegv-on-a-specific-thread
Thanks for the help! I think this can be closed


Add tests generated by evmone, update EOF Exceptions

🗒 Description

🔗 Related Issues

✅ Checklist

[ ] All: Set appropriate labels for the changes.
[ ] All: Considered squashing commits to improve commit history.
[ ] All: Added an entry to CHANGELOG.md.
[ ] All: Considered updating the online docs in the ./docs/ directory.
[ ] Tests: All converted JSON/YML tests from ethereum/tests have been added to converted-ethereum-tests.txt.
[ ] Tests: A PR with removal of converted JSON/YML tests from ethereum/tests have been opened.
[ ] Tests: Included the type and version of evm t8n tool used to locally execute test cases:  e.g., ref with commit hash or geth 1.13.1-stable-3f40e65.
[ ] Tests: Ran mkdocs serve locally and verified the auto-generated docs for new tests in the Test Case Reference are correctly formatted.

Even though this is pretty non-standard, maybe we could include it in the tests/prague/eip7692_eof_v1/ path, to be included in the EOF releases? Once we are able to share the additional coverage from these tests, we would be gradually working on properly migrating it to EEST generators and removing duplicates.

Closing in favor of #786


Don't retry on fatal errors in Sync

Use non-zero exit code in Sync if anything failed.
Fixes #241

Done in ce8ded740f99474bf92e0647d167858b9fbd44b6


Change the update policy for OLLAMA_ORIGINS to Override

So that I will be able to remove some of the default origins.

Hi @yaoxi-std thanks for the PR. This unfortunately breaks some of the default assumptions of how the environment variable works. Is your desire to disable some of the default OLLAMA_ORIGINS values? The hope is they are safe defaults so this shouldn't be required - let me know.


Exception in CompilerEnginer.php

Laravel Version: 9.x and 10
PHP Version: 8.x

Description:
There is an exception regarding array offset in CompilerEngine.php file on line 61, whenever I run the serve command or try to access the app URL, it shows Illegal offset type in isset or empty error.
Steps To Reproduce:
By replacing ! isset($this->compiledOrNotExpired[$path]) with ! isset($path) resolved the issue but I don't think this is the valid solution.

Hey there,
Can you first please try one of the support channels below? If you can actually identify this as a bug, feel free to open up a new issue with a link to the original one and we'll gladly help you out.

Laracasts Forums
Laravel.io Forums
StackOverflow
Discord
Larachat
IRC

Thanks!


Add license

A license needs to be added. FSharp.Compiler.Service maybe?

Makes lot of sense, thank you


Python-3: change python shebang to #!/usr/bin/env python3

Change-Id: If6086279087a70119c252205336670e20bc20e73
Signed-off-by: Eyal Shenitzky<EMAIL_ADDRESS>

No longer needed, https://github.com/oVirt/ovirt-ansible-disaster-recovery/pull/84 was merged to master


Menu not displaying

The menu does not display when i press the hotkey.
Noclip key works, but not the menu.
Maybe I'm missing a dependency in regards to the menu display? like a UI or something.
I don't see any errors in the console

It'd be cool if I could get some support on this, it sounds like a very good menu

Same with me. Pretty sure it's something to do with fx_version.

The menu does not display when i press the hotkey. Noclip key works, but not the menu. Maybe I'm missing a dependency in regards to the menu display? like a UI or something. I don't see any errors in the console

Have you set your permissions file correctly?

hello I have the same problem the menu is not displayed and I have no error response on the other hand it opens well because the mouse and well displayed on the screen

Make sure you follow the instructions thoroughly. I tried to setup it up the other day and I got it working by simply following the instructions.

Hello, I followed the steps correctly and the noclip works well, when I press f10 (I have not changed the key) the menu does not sow, only appears a mouse pointer. Any solution? I have correctly ensured the permissions.cfg script and added my fivem ID, I added the webhook in the server.cfg

Hello, I followed the steps correctly and the noclip works well, when I press f10 (I have not changed the key) the menu does not sow, only appears a mouse pointer. Any solution? I have correctly ensured the permissions.cfg script and added my fivem ID, I added the webhook in the server.cfg

You need to download this : https://github.com/FlawwsX/erp_adminmenu/releases/download/1.0.0/release-1.0.0.zip


Keerans changes

Add digestive_80-1. Fix name and model mistake for plexus_15 and _16

@keeran97 would you please:

Fork this repository into your GitHub account.
Use the HEAD of the curation branch as the base for making changes
Make pull requests from a branch of your fork back against the curation branch of this repo.

Thanks.
I'll delete this PR as there are updates (made to curation) missing from it.


Android : When called login() => popup "*Unknown error."

function onDeviceReady() {
  window.game.setUp();
}

$("#googleplay-login").click(function () {
  window.game.login();
});

Cordova 6.0.0
I see loading icon and Google Play Games loading popup
Then I get a popup : "*Unknown error."
Is it because it's my Google developer account or it's not an alpha version (but dev one) ?

It's because of dev version,
With alpha, it's perfect.


default errorformat / errorfunc

Is your feature request about something that is currently impossible or hard to do? Please describe the problem.
Since defaults are being reconsidered, maybe reconsider &errorformat as well. While &makeprg=make seems sensible, its &errorformat is rather that of gcc with some output of make being ignored.
Describe the solution you'd like
More consistent, in view of &makeprg, would be that the output of make is parsed while that of its used compiler, historically gcc, but point being that make can be used with others, is not yet treated, but could be added by setlocal &errorformat ./^=....
Describe alternatives you've considered
Looking at a popular plug-in like Ale that parses linter output into quickfix entries, one may wonder whether &errorformat suffices (to all practical ends) and a more flexible &errorfunc facilitates at least understanding; &erroformat can be seen as a tuple of regular expressions, prone to being write-only. Maybe its creator @w0rp has an insight to share where &erroformat proved too limiting.

This has been pulled out of the final discussion at https://github.com/vim/vim/pull/15798

Some formats, like the classic gcc style are very easy to parse with &efm but it becomes harder very quickly when the designers depart from that admittedly very old convention. Nowadays, compilers, linters, test runners, etc. tend to output results in XML, JSON, or fancy user-oriented styles with freaking emojis and in those cases, &efm clearly shows its limitations.
&errorfunc, or &errorexpr, or whatever you want to call it (I prefer the latter) would be very welcome. I have successfully used that strategy with :cgetexpr in the past and it scales very well.


Merge 11 -> 12

➡ Forward port
Port sdf11 to main
Branch comparison: https://github.com/ignitionrobotics/sdformat/compare/main...sdf11
This is a draft until I port the changes in sdf/1.8 folder to sdf/1.9
Note to maintainers: Remember to Merge with commit (not squash-merge or rebase)

This is a draft until I port the changes in sdf/1.8 folder to sdf/1.9

I expect the changes to pose.sdf to conflict with #690

Codecov Report

Merging #706 (b1cccd9) into main (b6fa291) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main     #706   +/-   ##
=======================================
  Coverage   87.94%   87.94%
=======================================
  Files          73       73
  Lines       11170    11170
=======================================
  Hits         9824     9824
  Misses       1346     1346

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update b6fa291...b1cccd9. Read the comment docs.

@azeey can you review https://github.com/ignitionrobotics/sdformat/pull/706/commits/2229b96c59662881bc5df11a223463fd9b6f293a?


Support sample_time < 0 nanoseconds

julia> AlignedSpan(1238, TimeSpan(-32,2), RoundSpanDown)
ERROR: ArgumentError: `sample_time` must be >= 0 nanoseconds

Not sure I understand why we require times to be positive (https://github.com/beacon-biosignals/AlignedSpans.jl/blob/7f898cb7f6b0b5ecad1b9db2be3e4fc3517f8344/src/time_index_conversions.jl) but I think we shouldn't require this! Even though aligned spans are relative to sample index 1 (time 0) of some underlying signal, there's no reason they can't start before that signal does---even though actually indexing into it would cause a failure.

I think what happened is that these checks are from TimeSpans.index_from_time, where it does make sense to have them, and I copied them over without re-thinking. Then I did encounter this problem but I wasn't sure if it should actually be changed or not (i.e. should AlignedSpans actually represent samples that exist, always).
I agree it should be changed, because we don't e.g. store/check the duration of the recording or anything like that, so we could just as easily have spans corresponding to samples beyond the recording. Not sure why that should be allowed and not samples before the recording. I think it is better to see AlignedSpans simply as sample-rate-aligned-time-spans, not necessarily corresponding to a specific Samples object.


[BUG] iOS version crashes after leaving the app in the background

Describe the bug
After completing a workout and leaving the app in the background on the Nice job! screen, the app will crash when the user attempts to use the Back or Restart buttons.
To Reproduce
Steps to reproduce the behavior:

Start a workout.
Allow the workout to complete and the app to display the Nice job! screen
Leave the app in the background for several minutes.
Upon bringing the app to the foreground, attempt to use either the Back or Restart buttons.

Expected behavior
App should not crash.
Screenshots
If applicable, add screenshots to help explain your problem.
N/A
Device and Operating System (please complete the following information):

Device: iPhone 13 Pro
OS: iOS 17.0.3

Additional context
Add any other context about the problem here.

Issue does not occur on Android, iOS is potentially killing some process within the app.

Unable to reproduce


feature: add an out-of-band interface to pipeline

in order to read from redis while writing to it via a pipeline, it is sometime convenient to re-use the underlying connection object in a pipeline.  I did a little patch to predis like this:
//PipelineContext.php
public function __get($name) {
return ($name == 'oob') ? $this->_client : null;
}
while using it:
$value = $pipe->oob->get('key');

Yes it's useful, but it's also already possible:
$replies = $client->pipeline(function($pipe) use($client) {
    $pipe->echo('test1');
    $info = $client->get('key');
    $pipe->echo('test2');
});

So I don't think I'll add this one.

Its a pity, because, this is NOT the only way to use a pipeline (i.e. by using a closure).   I often pass pipe as a parameter to methods, and do the execute() by the end of a series of method calls.

Hmm, makes sense. Well then I'd prefer to be more explicit using PipelineContext::getClient() as a method that returns the underlying client instance used by the pipeline object.

 Thanks again, and sorry for closing your issue a bit too early.

I am glad it is implemented :-) Now I hope to see the next stable version asap ....


auto_fix: true fails when there are no changes to commit

  Verifying setup for ESLint…
  Verified ESLint setup
  Will use ESLint to check the files with extensions js
  Linting and auto-fixing files in /home/runner/work/***/*** with ESLint…
  ESLint found 6 errors (failure)
  Changes found with Git
  Committing changes
  Error: Error: Command failed: git commit -am "Fix code style issues with ESLint"
  /home/runner/work/_actions/wearerequired/lint-action/v1/dist/index.js:1108
  	throw new Error(`Exiting because of unhandled promise rejection`);
  	^

  Error: Exiting because of unhandled promise rejection
      at process.<anonymous> (/home/runner/work/_actions/wearerequired/lint-action/v1/dist/index.js:1108:8)
      at process.emit (events.js:210:5)
      at processPromiseRejections (internal/process/promises.js:201:33)
      at processTicksAndRejections (internal/process/task_queues.js:94:32)```

Hi, thanks for the report. That's odd since changes were detected. Can you provide more details about your setup please?

Hi, thanks for the report. That's odd since changes were detected. Can you provide more details about your setup please?

I see the same issue on a number of our repos using Swiftlint as the linter.

I see the same issue on a number of our repos using Swiftlint as the linter.

@brennanwilkes FWIW, I had success seeing that my runner actually had a modified file outside the linter directory which caused this error for me.
Enabling debug as described here: https://docs.github.com/en/actions/managing-workflow-runs/enabling-debug-logging showed me the file and I was able to git rm and gitignore the file since it was only an "unneeded" file

@brennanwilkes FWIW, I had success seeing that my runner actually had a modified file outside the linter directory which caused this error for me.
Enabling debug as described here: https://docs.github.com/en/actions/managing-workflow-runs/enabling-debug-logging showed me the file and I was able to git rm and gitignore the file since it was only an "unneeded" file

The same thing happens with my setup: https://github.com/wh1t3h47/teste-desenvolvimento-web/runs/3198622148
It detects changes when there are none

Hello, I enabled debugging as described by @ghost (thank you a lot!)
So I found out the issue with my repository, the problem is that yarn.lock is modified when lint-action runs, so it fails.

@wh1t3h47, thank you so much for your suggestion, I have added that to my workflow and everything works like a charm.
For those who are interested in a possible approach, here is my lint.yml:
name: Lint

on: [push, pull_request]

jobs:
  run-linters:
    name: Run linters
    runs-on: ubuntu-latest

    steps:
      - name: Check out Git repository
        uses: actions/checkout@v2

      - name: Set up Node.js
        uses: actions/setup-node@v1
        with:
          node-version: 16.x

      - name: Install Node.js dependencies
        run: npm install

      - name: Revert changes into the package-lock.json file
        run: git checkout -- package-lock.json

      - name: Run linters
        uses: wearerequired/lint-action@v1
        with:
          auto_fix: true
          eslint: true
          eslint_dir: lib
          eslint_extensions: js

@AnthonyLzq Can we just do git reset --hard just after npm i step and before linter step?

Wait, I don't think so, since you haven't commit yet. Git restore you will return to the previous state of your package-lock.json file.


Do you have a plan to release for noetic?

現状の問題点
rt_usb_9axisimu_driver is not released on Noetic yet. (I think it works)
改善案
Could you run bloom release for us?

FYI: The README says that there are noetic-devel branch, but it does not exist actually.

We just preparing to release for Noetic.  (https://github.com/rt-net/rt_usb_9axisimu_driver/pull/37 , https://github.com/rt-net/rt_usb_9axisimu_driver/pull/38 )
Please wait for a moment.

Great! Arigatou gozaimasu!

https://github.com/ros/rosdistro/pull/29572

Thanks a lot!!!


weird issues with cron

I have this set up on a ubuntu 21.10 server and it works great when I run it manually.  It changes remote.domain.com to my public ip address almost instantly.  I make a copy of the script and set it to change test.domain.com in a cron task running every minute.  Doing a grep CRON /var/log/syslog shows it as running but nothing ever gets updated on the cloudflare side.  It still just shows <IP_ADDRESS>.  Any thoughts?  I am about to pull my hair out lol.

Same problem... only the first script i created works with and without cron...
The first script i created works with no problems but the second one doesn't update anything
IT WORKS:
*/1 * * * * /bin/bash ~/cloudflare-ddns-updater/scripts/home.sh
./home.sh
IT DOESN'T WORK (home.sh only works):
*/1 * * * * /bin/bash ~/cloudflare-ddns-updater/scripts/home.sh */1 * * * * /bin/bash ~/cloudflare-ddns-updater/scripts/home2.sh
*/1 * * * * /bin/bash ~/cloudflare-ddns-updater/scripts/home.sh && /bin/bash ~/cloudflare-ddns-updater/scripts/home2.sh
*/1 * * * * /bin/bash ~/cloudflare-ddns-updater/scripts/home.sh && sleep 3 && /bin/bash ~/cloudflare-ddns-updater/scripts/home2.sh
./home2.sh

I figured out my issue.  I am running this on a ubuntu server VM on my homelab and not a rpi.  Had a friend do a sanity check and he had me remove /bin/bash and try it again.  After that it works like a charm.  Are you running this on a rpi or a actual linux server?

I figured out my issue. I am running this on a ubuntu server VM on my homelab and not a rpi. Had a friend do a sanity check and he had me remove /bin/bash and try it again. After that it works like a charm. Are you running this on a rpi or a actual linux server?

on a linux server

Try removing /bin/bash from cron and see if that works for you. That's what fixed my issue.
…
On Tue, Apr 5, 2022, 14:45 Nick-I. A. @.> wrote: I figured out my issue. I am running this on a ubuntu server VM on my homelab and not a rpi. Had a friend do a sanity check and he had me remove /bin/bash and try it again. After that it works like a charm. Are you running this on a rpi or a actual linux server? on a linux server — Reply to this email directly, view it on GitHub <#37 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/AGMDN3MIRC6WTSTXISBDYSTVDSC3LANCNFSM5STQ66NA . You are receiving this because you authored the thread.Message ID: @.>

i'll try it later. thank you


Disabled Google APIs due to account being disabled

Removing Google oauth property from manifest to disable the Google APIs, and fixed resulting errors.

lgtm


UserWarning: merge defaulting to pandas implementation. Can we compare two dataframes with millions records?

I write the following records.
...

lst_json_a = []
lst_json_a.append({
    'name': 'gg008',
    'age': 36
})

lst_json_a.append({
    'name': 'gg009',
    'age': 37
})

lst_json_b = []
lst_json_b.append({
    'name': 'gg008',
    'age': 36
})

lst_json_b.append({
    'name': 'gg010',
    'age': 41
})

df_a = pd.DataFrame.from_records(lst_json_a)

df_b = pd.DataFrame.from_records(lst_json_b)

df_comparison = df_a.merge(df_b, indicator=True, how='outer')

df_comparison

After run, it has the following warnings.

How many records we can compare two DataFrame at most?

Several ten thousand is very OK.
file_path_a = Path('data/eventlog.csv').resolve()

df_a = pd.read_csv(file_path_a, sep=';', header=None)

file_path_b = Path('data/eventlog_large.csv').resolve()

df_b = pd.read_csv(file_path_b, sep=';', header=None)

df_comparison = df_a.merge(df_b, indicator=True, how='outer')

df_comparison

Several ten thousand is very OK.
file_path_a = Path('data/eventlog.csv').resolve()

df_a = pd.read_csv(file_path_a, sep=';', header=None)

file_path_b = Path('data/eventlog_large.csv').resolve()

df_b = pd.read_csv(file_path_b, sep=';', header=None)

df_comparison = df_a.merge(df_b, indicator=True, how='outer')

df_comparison

Hi @ggservice007 , thanks for posting this!
Are you interested in distributed implementation of merge with how=outer?

Hi @ggservice007 , thanks for posting this!
Are you interested in distributed implementation of merge with how=outer?

After vaex issue 955 issue is solved, we can refer to their code.
https://github.com/vaexio/vaex/issues/955
I will be try it.

After vaex issue 955 issue is solved, we can refer to their code.
https://github.com/vaexio/vaex/issues/955
I will be try it.

@ggservice007 Merge is different from diff in the issue you linked. Can you clarify what you are looking for?

@ggservice007 Merge is different from diff in the issue you linked. Can you clarify what you are looking for?

Make the "merge with how=outer" functionality of pandas to  distribute or parallel like other functions provided by modin.

Make the "merge with how=outer" functionality of pandas to  distribute or parallel like other functions provided by modin.

@ggservice007 , there is already a list of similar issues (#2472, #1003, #656). We have higher priority issues for the release but we are trying to take into account merge as soon as possible.

@YarShev  nice

Closing as a duplicate of #2472, #1003, #656.


fix: make sure to strip also base path non pathParameter

Issue #, if available:
fix #377
Description of changes:
When define resource /users/${proxy+},  request to /users/123 is path as /123. But when mapping /users,  request to /users is path as /users not /.  It is not symmetry.
BREAKING CHANGE: A handler of defined resource not use pathParameter be also less able to get base path.
Checklist

[x] Tests have been added and are passing

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

@brettstack @brett-vendia
Could you review this pull request?

Thanks @fossamagna is this a breaking change?

@brettstack
Thank you for your reply.
I think that breaking change. Since, if a handler of defined resource don't have a custom domain and pathParameter, it is also less able to get base path.


Only add stacks to the lookup history if recipes or usages are found

Fixes #153

I think this is a bit of a messy solution to the problem, perhaps the stack context could get passed along to setPages?

Updated with passing the stack to setPages, for uses of setPages with no associated stack i went with EmiStack.EMPTY


Get unique extensions from the filtered extensions

Get unique extensions from the filtered extensions
See: #38

@iocanel Can you review please ?


Port about-us page

closes https://github.com/YoungVision-eV/homepage-sveltekit/issues/205

Somehow the support-us screenshot tests are failing now

What


Some fa icons overlap bar

Some font awesome icons overlap the bar, for example the fa-battery-half icon

Please add version of artless-gauge, you are using

Sorry, complete forgot to mention.
node-red-contrib-ui-artless-gauge 0.1.17
Node-red 1.0.3
Dashboard 2.19.3

Will be fixed shortly.

Fixed in 0.1.19

Looks great again.

Thanks for the quick fix and thanks for this nice gauge.


Do not using this lib!!!!!

Using tray_mangaer instread,
this lib full of bugs and out of maintain any longer!!!

@luohao123   works pretty well for me. another package you mention lacks of documentation and examples even on pub page (at least at time on writing that comment)


.NET Core 3.1 as a new target platform (#48)

Getting it now compiled on netcoreapp3.1 tfm

This change is

Thanks for contributing to MvsSln!
According to your initial build error on linux, does this really help? :) I mean TargetFrameworks still contains netfx targetting net40;net472 that can produce the same error (I can't check it yet to be sure).
Anyway, I think it would be good to split it using a specific platform, like here:
https://github.com/3F/IeXod/blob/e96a6d6f5dc01e9241360679a7e952985700e93a/src/common.props#L57-L73
Here's how to detect linux, for example
https://github.com/3F/IeXod/blob/e96a6d6f5dc01e9241360679a7e952985700e93a/src/common.props#L25

$([MSBuild]::IsOSPlatform('linux'))

That is, for the most common solution, it might be something like  ~
<TargetFrameworks Condition="'$(OsEnvironment)'=='windows'">net40;net472;netstandard2.0;netcoreapp2.1</TargetFrameworks>
<TargetFrameworks Condition="'$(OsEnvironment)'=='linux'">netstandard2.0;netcoreapp2.1</TargetFrameworks>

What do you think?

These changes make  dotnet build MvsSln.sln -f netcoreapp3.1 which is fine for me now. Adding the complexity for "windows" and "linux" would make it unmaintainable because there will also be anyway need for adding also OSX and what not. And that would make it much more fragile.

These changes make dotnet build MvsSln.sln -f netcoreapp3.1 work, which is fine for me now.

It will just compile for a specific framework in this case while other user will face the error again
Also, you can even try the same build using supported .NET Core 2.1.
I've just checked it on newly created linux machine: dotnet build -f netcoreapp2.1

Adding the complexity for "windows" and "linux" would make it unmaintainable because there will also be anyway need for adding also OSX and what not.

But in fact these are different platforms that need to be considered independently anyway. Such for msbuild, IeXod projects etc.

And that would make it much more fragile.

If compare .NET projects and let's say projects on native C++, the second will be more fragile even between the same platform due to platform toolset, target platform version, etc. For .NET this usually relies only on minimal compatible version of the required target platform and dependencies with the same criteria which btw we don't have many.
So! @villelaitila I do not force you to make big changes of course :) but changes in this PR are a bit inconsistent as a solution for #48.
I recommend either provide only a few information in Readme for how to build this on linux to avoid the error MSB3644, or additionally split properties as it was mentioned above.
Let me know if you have questions or problems.
Thanks!

oh, maybe build.sh as a third option

Unfortunately I have not received any reaction after 4 months. Today, this PR is no longer relevant because projects file is now uses common.props with OsUnixLike flag and NetCoreTFM/NetStdTFM splitting
Here's build example on Ubuntu2004 worker image: https://ci.appveyor.com/project/3Fs/mvssln-2d2c2/builds/40491644#L1
Feel free to contribute anything later. Thanks for using,


Update Dutch translations

While working on other issues I noticed that a lot of Dutch translations do not exist. This PR adds missing translations and updates some existing ones.

Can one of the admins verify this patch?

@AppInventorWorkerBee ok to test

@SusanRatiLane I'm assigning this one to you since it will also feed into your work on a new translation system now that Google's shuttering Translate Toolkit.

@bartmathijssen It is great to have a translation update.
As Evan mentioned, Google is shutting down Google Translator Toolkit in December (without much warning). I'm looking at setting up something new with gitlocalize. If you're interested in working with me on that workflow, I would be deeply grateful.

@SusanRatiLane I am interested in working with you on that workflow, just let me know how I can help.

@SusanRatiLane I have been thinking about what the best way to translate App Inventor is for some time now. I found different systems that would provide continuous localization and GitLocalize is one of them, unfortunately it doesn't support the .properties file format. So while looking for different options I found Weblate. Weblate can be self-hosted, this way there are no restrictions to what functionality you may or may not have.
https://weblate.org/

@bartmathijssen I was looking to convert in and out of the .properties format. Most alternatives I found were commercial and priced prohibitively or else didn't provide features we need.
Weblate doesn't look familiar. I'll look into it ASAP.

Some bits that were not in the OdeMessages file that could use a translation:
Description: User Interface Switch component
appengine.switchComponentPallette=Switch
SwitchHelpStringComponentPallette=Toggle switch that raises an event when the user clicks on it. There are many properties affecting its appearance that can be set in the Designer or Blocks Editor.
TrackColorActiveProperties=TrackColorActive
TrackColorActivePropertyDescriptions=Color of the toggle track when switched on
TrackColorInactiveProperties=TrackColorInactive
TrackColorInactivePropertyDescriptions=Color of the toggle track when switched off
Description: Storage CloudDB
cloudDBComponentPallette=CloudDB
CloudConnectedMethodDescriptions=returns True if we are on the network and will likely be able to connect to the CloudDB server.
CloudConnectedMethods=CloudConnected
CloudDBErrorEventDescriptions=Indicates that an error occurred while communicating with the CloudDB Redis server.
CloudDBErrorEvents=CloudDBError
CloudDBHelpStringComponentPallette=Non-visible component allowing you to store data on a Internet connected database server (using Redis software). This allows the users of your App to share data with each other. By default data will be stored in a server maintained by MIT, however you can setup and run your own server. Set the "RedisServer" property and "RedisPort" Property to access your own server.
Description: Maps FeatureCollection
featureCollectionComponentPallette=FeatureCollection
FeatureCollectionHelpStringComponentPallette=A FeatureCollection contains one or more map features as a group. Any events fired on a feature in the collection will also trigger the corresponding event on the collection object. FeatureCollections can be loaded from external resources as a means of populating a Map with content.


bump Rubocop version to 0.33

I'm finding that pronto-rubocop doesn't handle this rubocop config:
Warning: unrecognized parameter AllCops:DisabledByDefault found in .rubocop.yml

I fixed this in my rubocop by upgrading to 0.33.  Is pronto-rubocop still locked to 0.32?

As of today, you should be able to update to 0.34 :smile:

thanks that fixed that! much appreciated


Change Template images

Is it possible to change the image for a template? I have a light template for a campfire, I was hoping to change the icon from the default light bulb to something else, but the normal way to change icons doesn't work.

This is indeed supposed to be editable. It looks like there's a bug happening that is preventing this from being changed.


Convert Metanorma XML to RFC XML

Hi, this just placeholder to keep a reference of what needs to be done on this process

Hi @ronaldtse, @opoudjis: Can you refer me to a complete example of an IETF document (in asciidoc) that I can use as a reference point to make sure this conversion process covers it all?

@ronaldtse: Any thoughts on this one?

@abunashir there are many examples in our GitHub account. These are some RFCs submitted to the IETF datatracker:

Minimal example: https://github.com/riboseinc/rfc-asciirfc-minimal
Very long example: https://github.com/riboseinc/rfc-asciidoc-rfc
https://github.com/riboseinc/rfc-divination-cfapi
https://github.com/riboseinc/rfc-camelot-holy-grenade

We just need to ensure the generated RFC XML v2 / v3 copy using the old gem and the new gem are the same. Thanks!

Cool, thanks @ronaldtse! I will start working on it next


favicon.ico on CustomHTML

Hi, you have an example project for using CustomHTML...
I implemented that aswell and it works great!
But I wondered if there's a way to also show a favicon.ico (Tab-Icon). I tried couple of things but nothing worked :/
<link rel="icon" href="./favicon.ico"> in the header of index.html didn't work when the favicon.ico was in the same directory as the index.html.
Since index.html is a Embedded Resource in the VS project, i tried to set favicon.ico also as Embedded Resource but that did also nothing.
Can you tell me how to use a favicon for the CustomHTML example?

Hi
Just tested this with the example CLI, putting a favicon.ico in the resources folder and <link rel="icon" href="./favicon.ico"> in the HTML.
If you immediately stop the server after you receive the authentication result, it will not work since favicon fetching is delayed by the browser. I added a Task.Delay(TimeSpan.FromSeconds(5)) at the start of OnAuthorizationCodeReceived and it displayed the icon correctly.
Could you check that out?

Thanks for the quick answer!
Sadly that doesn't work for me :/
Did everything as you said.
await Task.Delay(TimeSpan.FromSeconds(5)); at the start of OnAuthorizationCodeReceived
<link rel="icon" href="./favicon.ico"> in the head-element of the HTML
favicon.ico in the resource folder (I tried in Resource and in Resource/custom_page)
I'm using Chrome and an adblocker, maybe there's the problem...
But displaying the favicon works fine if I use a link from the internet like that:
<link rel="icon" href="https://i.imgur.com/2rfJs74.png"/>
I'll probably use a link then.
But I appreciate you're help man, you're awesome, keep it up :D

Tested it with 3 different browser, not sure what could be the problem here. But yes, using a link is a good workaround!


Add Poseidon hashing functions for one and two values

This PR proposes two new wrapper functions for Poseidon hashing.

hash_one_element
hash_two_elements

With the current implementation of Poseidon hashing one/two values is different to Pedersen due to the nature of the algorithm, however both implement the HashState which can cause confusion.  Where'as in pedersen hashing two elements is simply done as follows:
PedersenTrait::new(0).update(1).finalize()

Hashing two values in Poseidon with the similar pattern is wrong:
PoseidonTrait::new().update(0).update(1).finalize();

This can cause errors (for example here in Alexandria's merkle tree impl https://github.com/keep-starknet-strange/alexandria/blob/main/src/merkle_tree/src/merkle_tree.cairo#L69). Hashing one or two values using Poseidon uses the formula described here).
This is because under the hood 'finalize' actually incurs another round of hashing (whereas this is not the case for Pedersen) which may be misleading.
This is why I propose two new methods that can help with this issue (with the relevant tests) .

This change is

Reviewable status: 0 of 2 files reviewed, 1 unresolved discussion (waiting on @Leonard-Pat)

corelib/src/poseidon.cairo line 59 at r1 (raw file):

}

pub fn poseidon_hash_one_element(value: felt252) -> felt252 {

is this a part of the usual usage of poseidon? it generally seems to me that this shouldn't actually be part of the corelib.

I think so - its more to mimic the starkcurve TS lib (https://github.com/paulmillr/scure-starknet/blob/b9e81d7345ecdd088d0f263ceaed7d9e0b9290cb/index.ts#L362) used by sn.js

Reviewable status: 0 of 2 files reviewed, 1 unresolved discussion (waiting on @Leonard-Pat)

corelib/src/poseidon.cairo line 59 at r1 (raw file):
Previously, Leonard-Pat wrote…
in any case - the solution should probably be creating a state correctly (using another function - not new) - instead of using the function directly.

I've updated to be a trait - however do you think its better if theres a another hash struct

Was taking a glance and it reminded me of this issue that I had when writing the Hash Chapter in the Cairo book, in which we introduce how to use the corelib hash functions using the Hash trait (see https://github.com/cairo-book/cairo-book/pull/496).

The confusion comes from the fact that Pedersen is instantiated with a base state while poseidon is not.
So if you want to simply hash the struct members together you would need to instantiated the state with the first member of the struct, and then update it with the remaining members, and then finalize. Whereas for poseidon you can simply update the default empty state with the struct to hash.

I'll verify later if there isn't a more elegant way of just hashing a structs fields together - and if there isnt one we should ask for it

One problem is that Pedersen is always introduced with a base state, unlike Poseidon, and the hashes calculated with, for example starknet-js, often don't match the ones in Cairo because of these properties.
I'm sure there's a better design to design this hashing API to avoid these problems

corelib/src/poseidon.cairo line 86 at r5 (raw file):

/// Computes the Poseidon hash of either a single value or a pair of values.
pub fn hash_value<V, +HashValueHelper<V>>(v: V) -> felt252 {

What's the advantage of making this generic? instead of declaring two functions?
Code quote:
hash_value<V, +HashValueHelper<V>>(v: V)

corelib/src/poseidon.cairo line 86 at r5 (raw file):
Previously, orizi wrote…
the two functions are less clear IMO - the aim of this as a function fits more when saying "this is the hash definition of a full value" - moving the hash over span to here as well make more sense to me.

But those are different functions.
you have
posiedon_hash_single
posideion_hash
and
poseidon_hash_many
and I'm not sure we want to mix them.

I think they're are lot of use cases for hashing a single / two values together - we've used both throughout our account (at Argent)

is the merkle tree the only relevant use case? if so - it seems merkle tree libraries should take care of it themselves - instead of including this in the languages core.

Reviewable status: all files reviewed, 2 unresolved discussions (waiting on @ilyalesokhin-starkware and @Leonard-Pat)

I think they're are lot of use cases for hashing a single / two values together - we've used both throughout our account (at Argent)


Update exclude rules in phpcs.xml

Removed *.dust and *.twig exclude rules from phpcs.xml. These prevent linting files in directories with a name containing "twig" or "dust".

Thanks :)!


fix doc link in README

fix doc link in repo REDME

Awesome!
Thank you, @javyzheng , for contribution.
Looking forward for more!