fix: correctly handle null value

Codecov Report

Merging #22 (69ead36) into main (d234942) will increase coverage by 0.20%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##             main      #22      +/-   ##
==========================================
+ Coverage   70.03%   70.24%   +0.20%
==========================================
  Files           7        7
  Lines         287      289       +2
==========================================
+ Hits          201      203       +2
  Misses         57       57
  Partials       29       29

Impacted Files
Coverage Δ

rows.go
71.30% <100.00%> (+0.50%)
:arrow_up:

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 d234942...69ead36. Read the comment docs.


Improve focused tests and other misc test changes

test.only in a single file will now cause tests in other files to also be suppressed.
Test preparation phase is now completely distinct from test execution. Progress bars no longer flicker since we know all test count before we start running them.
Add warning when tests are focused. Point to their location.
rome ci will fail if there are focused tests. ie. someone commits test.only

TODO: Get rid of createErrorFromStructure completely and remove ErrorStructure diagnostic fields. Throw a DiagnosticsError where we can.


[R] int32/int64 issues in opening CSVs

Background: I'm trying to use arrow to (a) assemble two large sets of CSVs into two (folders of) parquet files and then (b) combine the two into a single working dataset.  The two sets of CSVs all have the same column structure:  article_id (string), phrase (string), n (integer).  Without specifying a schema, in step (a) open_dataset parses n as int64 in the first set and as int32 in the second set.  This results in an error when trying to combine them (because, I guess, automatic casting from int32 to int64 isn't supported yet).  The maximum value of n across the entire first set is 576, so I'm not sure why arrow thinks it needs 64 bits in the first place.
Shorter background:  In a collection of CSVs, open_dataset parses the column n as int64 and I need it to be int32.
An example CSV, the first file (from the first of the two sets), is attached: 1960-1-01.csv.zip
I've tried specifying a schema, as follows:
text_ar = open_dataset(noun_phrase_dir,
                       format = 'csv',
                       schema = schema(article_id = string(),
                                       phrase = string(),
                                       n = int32()))

However, when specifying a schema, open_dataset includes the header row, and raises an error because the letter n can't be cast to an integer:
Error: Invalid: Could not open CSV input source [path to file]: Invalid: In CSV column #2: Row #1: CSV conversion error to int32: invalid value 'n'

So then I tried adding the argument skip = 1:
text_ar = open_dataset(noun_phrase_dir,
                       format = 'csv',
                       schema = schema(article_id = string(),
                                       phrase = string(),
                                       n = int32()),
                       skip = 1)

Which returns this error:
Error: The following option is supported in "read_delim_arrow" functions but not yet supported here: "skip"

My next approach was to let open_dataset just use the default scheme, and cast n to int32 as a second step.  I can't seem to figure out how to fit call_function into dplyr syntax, with a few variations on the following:
text_ar |>
    dplyr::mutate(n = call_function("cast", n, int32()))

Error: Expression call_function("cast", n, int32()) not supported in Arrow
Call collect() first to pull data into R.

The Table class has a $cast method that might do the trick.  But text_ar is a FileSystemDataset and either doesn't have a $cast method or I don't understand what it expects.
text_ar$cast(schema(n = int32()))

Error: attempt to apply non-function

It does have a $schema format, but per the docs this doesn't support casting:
text_ar$schema <- schema(n = int32())

Error: Type error: fields had matching names but differing types. From: n: int64 To: n: int32

I haven't been able to find any information on converting a FileSystemDataset to a Table.  I have no idea where to go from here.

The following code may be helpful.
library(arrow, warn.conflicts = FALSE)
library(dplyr, warn.conflicts = FALSE)

ds <- open_dataset("1960-1-01.csv", format = "csv")

ds |>
  mutate(n = cast(n, int32())) |>
  write_dataset("tmp_dir", format = "parquet")

open_dataset("tmp_dir")

I haven't been able to find any information on converting a FileSystemDataset to a Table. I have no idea where to go from here.

dplyr::compute() can be used in the dplyr pipeline.
This is in line with the general usage of dbplyr, but it certainly seems to be barely mentioned in the arrow documentation.
By the way, I recently did the same thing with pyarrow, but first I read each CSV file with its exact type and converted it to a Parquet file, then I read a collection of Parquet files and wrote them out again in a partitioned dataset.
The Parquet to Parquet conversion was very easy, as the read/write speed is much faster once converted to Parquet.

Thank you!  FWIW compute() seems to consistently crash; I'm not sure whether this is because it's not really designed for treating local files as though they were a remote database, but collect() works as expected.

@dhicks if you happen to have a reprex for the crash, it would be much appreciated - compute() shouldn't crash on local files. (Is it for the same file you've attached?)
Also, what version of Arrow are you using? (arrow_info() would give you this.)
You can use col_types or skip_rows. The documentation is a little unclear on this point, but the acceptable option names actually come from CsvReadOptions/CsvParseOptions/CsvConvertOptions. For example:
> open_dataset('./temp/1960-1-01.csv', format='csv', schema=schema(article_id=string(), phrase=string(), n=int32())) %>% collect()
Error: Invalid: Could not open CSV input source '/home/lidavidm/temp/1960-1-01.csv': Invalid: In CSV column #2: Row #1: CSV conversion error to int32: invalid value 'n'
> open_dataset('./temp/1960-1-01.csv', format='csv', schema=schema(article_id=string(), phrase=string(), n=int32()), skip_rows=1) %>% collect()
# A tibble: 452 × 3
   article_id phrase          n
   <chr>      <chr>       <int>
 1 1960-1-01  it             63
 2 1960-1-01  we             24
 3 1960-1-01  world          13
 4 1960-1-01  numbers        11
 5 1960-1-01  they           11
 6 1960-1-01  our_numbers    10
 7 1960-1-01  he              9
 8 1960-1-01  life            9
 9 1960-1-01  i               8
10 1960-1-01  mankind         7
# … with 442 more rows
> open_dataset('./temp/1960-1-01.csv', format='csv', col_types=schema(article_id=string(), phrase=string(), n=int32())) %>% collect()
# A tibble: 452 × 3
   article_id phrase          n
   <chr>      <chr>       <int>
 1 1960-1-01  it             63
 2 1960-1-01  we             24
 3 1960-1-01  world          13
 4 1960-1-01  numbers        11
 5 1960-1-01  they           11
 6 1960-1-01  our_numbers    10
 7 1960-1-01  he              9
 8 1960-1-01  life            9
 9 1960-1-01  i               8
10 1960-1-01  mankind         7
# … with 442 more rows

Adding to what has been said there by @lidavidm, skip_rows is the way to go here.  However, skip should also work, and I have opened a ticket on the project JIRA (where we track bugs/features) to make this work properly: https://issues.apache.org/jira/browse/ARROW-15743
Hopefully things should work using skip_rows.


Error trying to start business network. Error: No valid responses from any peers - hyperledger-fabric

I am new to hyperledger and try to start network using below commend.

composer archive create -t dir -n .
successfull

composer network install --card PeerAdmin@hlfv1 --archiveFile<EMAIL_ADDRESS>successfull

composer network start --networkName flightoperations --networkVersion 0.0.5 --networkAdmin admin --networkAdminEnrollSecret adminpw --card PeerAdmin@hlfv1 --file networkadmin.card

Error:
Starting business network flightoperations at version 0.0.5
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: failed to execute transaction 0f5bdde7d55439863c41b93be0bd2388b371bb86d43c0542b59b77959ceeb902: error starting container: error starting container: Failed to generate platform-specific docker build: Failed to pull hyperledger/fabric-ccenv:latest: API error (500): Get https://registry-1.docker.io/v2/: dial tcp: lookup registry-1.docker.io on <IP_ADDRESS>:53: read udp <IP_ADDRESS>:34408-><IP_ADDRESS>:53: i/o timeout
Command failed

@rana78600 - this repository does not talk about composer. So this is not the right place for your question. This repo is talking about setting up Fabric network on Kubernetes. Thanks.


azkaban execution directories fail to be deleted

This PR https://github.com/azkaban/azkaban/pull/1292 forces the all files/directories created within the execution directory to be a part of the group associated with the azkaban process.  However it cannot guarantee them to be deleted by "azkaban" user - whether it's deletable by "azkaban" depends on the file group write/read permission. Following is an example of such directory which cannot be deleted even if owning group is "azkaban":
drwx------. 2 comply azkaban 4096 Feb 27 10:44 06f0a922-0ce9-4189-b33b- e4cf2482a715_resources
Firstly, "azkaban" doesn't have read permission to list all items within this dir, thus recursive deletion is not permitted. Secondly write permission is not granted to "azkaban" so deletion cannot be permitted.

When you know why, then you will know how.


LayerStyle ChangeEnd Bug

Description
If you have a layer with a labels object and a label, it is possible for the label to be undefined.
When the changeEnd method is then called, the check on layer.style.label.minZoom throws an error.
Type of Issue
Please delete options that are not relevant, and select all options that apply.

✅ Bug

Closing this as I now cannot seem to replicate - will re-open later on if we can


Merge master branch to prTesting1_202011031932 branch

Docs Build status updates of commit 73e2e03:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

split/updateTestRef1.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel


docs: add ckb-sdk-js migration guide

Some code blocks are not aligned on the preview page:  https://lumos-website-git-fork-painterpuppets-addckbsdk-f785e0-cryptape.vercel.app/
For example:


Wrong identition in razor files for new initiliazed classes

Consider this class:
public class NavItem
{
    public required string Text { get; set; }
    public IEnumerable<NavItem> Children { get; set; } = Enumerable.Empty<NavItem>();
}

Now consider this razor code:
@code {

    private IEnumerable<NavItem> GetNavItems()
    {
        yield return new NavItem
        {
            Text = "Hello 1",
            Children = new List<NavItem>
            {
                new NavItem
                {
                    Text = "Hello 2"
                }
            }
        };
    }
}

When ever you format the document his happens:

This is, perhaps surprisingly, working as expected. The code that doesn't move in the GIF is a collection initializer, and it doesn't move because Roslyn doesn't move it. See https://github.com/dotnet/roslyn/issues/8269 for context.
If Roslyn fixes that issue ever, and starts formatting collection initializers, then we should get that behaviour too.

@davidwengier but this does not happen for me when I use the same code within a code-behind file. Only within .razor files


Bug with style update (traslateY) when CONTAINER-BOTTOM and size of sidebar is changed

I've noticed a bug when sidebar is in the bottom position (image 1) and it size is changed (image 2). Sensor detect changes, and update demensions (sidebarHeight and translateY) but styles not changes. Can you fix it?

I'm so sorry for delay, give me 12 hours and i'll fix it.

It fixed https://github.com/abouolia/sticky-sidebar/commit/68a9be2e9ca30a5caf30ad5e72b2b2e0867bfaab


Mongoose Error

Description
Error with the DB, however, the URI is all good :/

I think this might actually be a bug, :/. Also, how would you do the callbackUrl

I think this might actually be a bug, :/. Also, how would you do the callbackUrl

It's not a bug. Make sure you have installed everything correctly.

It's not a bug. Make sure you have installed everything correctly.


LCS

Is it still possible to create an Ax2012 project in LCS?
I only seem to have 365-related project types to choose from?
This is a great tool - if LCS still supports it .. :-)

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

ID: 9b8837ed-94cc-aec1-03db-b0d9f1ac25f6
Version Independent ID: 6f44df6c-005a-3002-0ed0-fae33da185f7
Content: Install and run System diagnostics - AX 2012
Content Source: articles/dev-itpro/lifecycle-services/ax-2012/install-run-system-diagnostics-lcs.md
Product: dynamics-ax-2012
GitHub Login: @manalidongre
Microsoft Alias: manado

Bug 280764 has been logged to track this issue.

@Mads-Bech, thanks for making us aware of this.
@manalidongre, please update this topic based on the feedback.

As per the above step we configured everything perfectly, we get Environment detailed(Job,collectors) in system diagnostics(LCS) working fine, while taking report in Power BI dashboard against the project "https://diag.lcs.dynamics.com/UpgradeAnalysisReport/Report/project Id" we getting blank upgrade analysis power BI dashboard.

Showing blank data in Upgrade analysis report (Power BI report) for system diagonistics against the project.
"https://diag.lcs.dynamics.com/UpgradeAnalysisReport/Report/projectID"


Fix tags delete

I never use tags but while testing something I noticed that the attempt to remove the last tag of an image results in a server error.

Codecov Report

Merging #294 into master will decrease coverage by 0.06%.
The diff coverage is 100%.

Can you try to add a few tests in https://github.com/LycheeOrg/Lychee-Laravel/blob/master/tests/Feature/PhotosTest.php
e.g. near line
https://github.com/LycheeOrg/Lychee-Laravel/blob/master/tests/Feature/PhotosTest.php#L174
(test the tag removal).

Test done. An existing test extended. They even still pass :-).


Gemma finetuning formatting

Hi,
I'm a bit confused. Should I use Gemma formatting tags during fine-tuning https://ai.google.dev/gemma/docs/formatting , or should I use this template: 'Instruction:\n{instruction}\n\nResponse:\n{response}' I found this template in many notebooks

Hi @mostafamdy,
If you're working in an environment that supports or requires the Gemma format, it's best to follow the official documentation. The 'Instruction-Response' template, on the other hand, is commonly used for fine-tuning instruction-following models. You can also compare the outputs from both approaches and choose the one that produces the desired results.
Thank you.

Hi @mostafamdy,
Could you please confirm if this issue is resolved for you with the above comment ? Please feel free to close the issue if it is resolved ?
Thank you.

Closing this issue as stale. Feel free to re-open if the issue still persists.
Thank you!


Error occurs when creating host-visible image

I call the ResourceAllocator::createImage with VkMemoryPropertyFlags memProps = VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT and encounter an error in fillBakedAllocateInfo when allocating memory in memallocator_vk.cpp. The function getMemoryType() fails to fetch a valid memory type.
I debugged for a while but still can't fix this.
How to correctly create a host-visible image? My codes:
  VkExtent2D size{ width, height };
  auto colorCreateInfo = nvvk::makeImage2DCreateInfo(size, VK_FORMAT_R16G16B16A16_SFLOAT,
			VK_IMAGE_USAGE_SAMPLED_BIT | VK_IMAGE_USAGE_STORAGE_BIT, true);
  nvvk::Image image = m_pAlloc->createImage(colorCreateInfo, VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT); // <-- error occurs

Hi, to create images with host visible property, the image has to be created with tiling linear. It is not possible to have a host visible version of an optimized tiling image.
The following code will work.
  VkExtent2D size{ width, height };
  auto       colorCreateInfo = nvvk::makeImage2DCreateInfo(size, VK_FORMAT_R16G16B16A16_SFLOAT,
                                                     VK_IMAGE_USAGE_TRANSFER_SRC_BIT | VK_IMAGE_USAGE_TRANSFER_DST_BIT, false);
  colorCreateInfo.tiling     = VK_IMAGE_TILING_LINEAR;
  nvvk::Image image = m_alloc.createImage(colorCreateInfo, VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT);

Note, linear images has many limitations, they cannot have mip-mapping, no sampling and many more. Only usage transfer src and dst are accepted.
If the goal is to access the image buffer as a normal buffer, you need to copy the image to a buffer using vkCmdCopyImageToBuffer and vkCmdCopyBufferToImage to copy the modified buffer back to an image.
The allocator has a convenient method to create images from data. The data is correctly transferred using staging buffer.
See:
Image ResourceAllocator::createImage(const VkCommandBuffer&   cmdBuf,
                                     size_t                   size_,
                                     const void*              data_,
                                     const VkImageCreateInfo& info_,
                                     const VkImageLayout&     layout_)


Add sidebar activity errors and empty state

Rebased

I am merging thi. I will open a new PR if there is anything that needs to be changed comes up on comments.


Remove empty anyOf

I have the following schema to add support for mongodb ObjectId type:
export const objectId = z.union([
  z.instanceof(ObjectId),
  z
    .string()
    .regex(/^[a-f0-9]{24}$/, { message: "This string does not look like an ObjectId()" })
    .transform((s) => new ObjectId(s))
]);

This translates to the following schema:
{
  anyOf: [ {}, { type: 'string', pattern: '^[a-f0-9]{24}$' } ]
}

The issue is that {} allows for any input. I think it would be more appropriate to imply that z.instanceOf() cannot be translated into a JSON Schema and therefore should never be able to match anything somehow.
Does that make any sense?

Yup, makes sense. z.instanceOf should return undefined on parse and this problem will be solved.

I wanted to tackle this but I came across a small hiccup. After reading zod codebase, I think it will be hard to implement properly.
When calling z.instanceof(), zod creates a ZodAny type with a custom check function on it. Thus there is no good way to know a node is an instanceof one. It might need a small zod rewrite. Do you agree?

That seems reasonable, yeah. Lets keep this open for now, but looks like logging an issue / PR-ing Zod will be the first step.

@qraynaud Hey, I just released 3.18.1 which adds a strictUnion option. Let me know if this solves your problem. If so I think we can close this

Hey! This seems like a reasonable option at lest for the time being yes.


Split the doc and use mkdocs

Motivation
Currently, the readme is a bit hard to read because there is too much information on a single page.
Requirements
I think we should split the readme into multiple files and create a mkdocs site to display it correctly.
I think we should use the material theme which is really great. We could deploy this site as GitHub Pages.

@aftouh what do you think about that?


A way to expand mapped types

I want to be able to expand mapped type in intellisense
Currently, mapped types is displayed directly with the mapper and original type, which is unhelpful as hell

With the ts 2.8 condition type,
you can write more powerful declaration to map almost everything to correct type for you,
but the ide simply show it is mapped,
you don't know what is it actually mapped to.
for example, in the above case, I have a mapper looks like

type Mapper<T> = {
    [K in keyof T]:
        T[K] extends {type: SQL_ENUM<infer U>}? U:
        T[K] extends {type: SQL_ENUM<infer U>, allowNull: true}? U | undefined:

        T[K] extends {type: typeof Sequelize.DATE, allowNull: true}? Date | undefined:
        T[K] extends {type: typeof Sequelize.DATE}? Date:

        T[K] extends {type: typeof Sequelize.INTEGER, allowNull: true}? number | undefined:
        T[K] extends {type: typeof Sequelize.INTEGER}? number:

        // stop here, fon't let things goes too wrong
        T[K] extends {type: typeof Sequelize.ENUM}? never:

        T[K] extends {type: typeof Sequelize.STRING, allowNull: true}? string | undefined:
        T[K] extends {type: typeof Sequelize.STRING}? string:

        T[K] extends {type: typeof Sequelize.TEXT, allowNull: true}? string | undefined:
        T[K] extends {type: typeof Sequelize.TEXT}? string:

        T[K] extends {type: typeof Sequelize.BOOLEAN, allowNull: true}? boolean | undefined:
        T[K] extends {type: typeof Sequelize.BOOLEAN}? boolean:

        any
}

that will transform the decalration to a simple
interface session {
    token: string,
    userId: string,
    ip: string
}

But the ide won't tell you anything, which is quite annoying

@mjbvz could we perhaps expose consider exposing clickable "expando" ranges in quick info/signature help that fire a request to a new language server endpoint with a token associated with the range for expanded content for the range (and that expanded content may itself have more things which need expansion)? Off the top of my head, I can think of four places where this'd be useful:

Generics, aliases, and type queries. Click the a type reference to replace it with the structural decomposition (or conditional, union, whatever the underlying structure is) of the reference.

The any or ... we print for reverse mapped types. These types are limited in how much we print, as they have each property inferred on demand (as they each need to be mapped backwards through a mapped type). This is what happens when, for example, we infer the T in a Readonly<T> - we need to undo the readonlyness on whatever we find for T and we do that in a deferred fashion (since otherwise a circular type reference in the T would blow up, as we have no good name for our unmapped T to reference with). Being able to expand these one property at a time in the editor as needed would be great.

The any or ... we print on encountering circular referential local types. This happens when, for example, you have two mutually recursive functions that return one another. We actually type check this strongly, but both will just print as () => () => any or () => () => ... (as of yesterday) today, since we have no reference that we know will stick around with which to indicate the circularity.

The ... we print in the output when the type is truncated for being too long. Sometimes, even when a type is truncated, the part you care about isn't in the beginning bit and you just wanna see more. Turning on noErrorTruncation works, but then you might always get huge types (and commensurately longer LS response times) - being able to expand little bits on demand could be a boon here.

cc @DanielRosenwasser and @RyanCavanaugh since I think we've mentioned this before.

What about an expand feature as described in #34944?

I just ran into this myself setting up similar code.  I have a lot of conditional and mapped types that work wonderfully, but they unfortunately render intellisense unusable.
Intellisense
const Person: t.TsTypeToObjType<MapPropDefinitionsToTsTypes<MapPropDefinitionsToTsOptionalProperties<t.MapTsPropertiesToPropDefinitions<MapPropDefinitionsToTsTypes<MapPropDefinitionsToTsOptionalProperties<MapObjectDefParamsToPropDefinitions<{
    type: t.Type<"string">;
}>>> & MapPropDefinitionsToTsTypes<...>, never>>> & MapPropDefinitionsToTsTypes<...>>

type Person = {
    type: LiteralType<"Person">;
    name: Type<"string">;
    age: Type<"number">;
}```

@akutruff  You can use an Id type to expand out the properties of a type alias (type Id<T> = {} & { [P in keyof T]: T[P} } ).

@akutruff You can use an Id type to expand out the properties of a type alias (type Id<T> = {} & { [P in keyof T]: T[P} } ).

Unfortunately that didn't solve the problem.  Only one property became simplified, but otherwise, it's still has expanded noise.

I believe most of the pain in intellisense with regards to mapped types is because they're often passed inferred types that have no better name than their expanded form. Ordinarily, Typescript should display a type alias's name wherever possible, e.g. Mapped<Person>, however if Person has any logic to it, TS will instead display the fully expanded type, even if the 'Person' alias is explicitly passed.
There's also currently no way in Typescript to provide a name for an inferred type.
If the above problem were fixed and we were able to name inferred types, then we would be able to architect types whose naming actually communicates intent to developers clearly. I believe these would also provide natural points in intellisense where a developer could opt to 'step into' type expansion.
I detail the problem and make a proposal for new syntax to name inferred types here:
https://github.com/microsoft/TypeScript/issues/45954


Private Endpoint, Data Connect and Blob Storage

Receiving 403 error when my pipeline reads from DataConnect and saves into Blob.
{
"errorCode": "2200",
"message": "ErrorCode=UserErrorOffice365DataLoaderError,'Type=Microsoft.DataTransfer.Common.Shared.HybridDeliveryException,Message=Office365 data loading failed to execute. office365LoadErrorType: PermanentError. Operation on target 67a42e0a-145a-495c-9cb6-103d5c556609_Activity failed: ErrorCode=AzureBlobFailedToCreateContainer,'Type=Microsoft.DataTransfer.Common.Shared.HybridDeliveryException,Message=Unable to create Azure Blob container. Endpoint: 'https://gbusmgdcconvlineage01.blob.core.windows.net/', Container Name: 'managers'.,Source=Microsoft.DataTransfer.ClientLibrary,''Type=Microsoft.WindowsAzure.Storage.StorageException,Message=The remote server returned an error: (403) Forbidden.,Source=Microsoft.WindowsAzure.Storage,StorageExtendedMessage=RequestId:0b5d4c5a-801e-0012-7e4d-00367a000000 Time:Mon, 16 Oct 2023 16:25:27 GMT,,''Type=System.Net.WebException,Message=The remote server returned an error: (403) Forbidden.,Source=System,',Source=Microsoft.DataTransfer.ClientLibrary,'",
"failureType": "UserError",
"target": "M365ManagersToAZBS",
"details": []
}
I know my Private endpoints are correct, synapse can test connectivity and I can create a simple copy job but when reading from data connect then writing to blob i get this.
Are these technologies not compatible? Is there a work around?

I have also hit this issue. @andrewsschmidt did you get any solution/workaround for this ? I am able to copy blob between folders from my synapse pipeline with private endpoint connectivity and public access fully 'Disabled'. It seems the copy from M365 dataset fails.
My setup is aligned with the documentation : https://learn.microsoft.com/en-us/graph/managed-private-endpoints-overview
Additionally, I have tried several permutations of the networking settings - 'Enabled from selected networks' as suggested in documentation, 'Disabled' etc. No luck.


Frontend Project "Sample-Frontend-Project" Navbar Improved Styling

Title and Issue number
Frontend Project "Sample-Frontend-Project" Navbar Improved Styling
Close #3469
Output
Before

After

Checklist:

[x] I have mentioned the issue number in my Pull Request.
[x] I have commented my code, particularly in hard-to-understand areas
[ ] I have created a helpful and easy to understand README.md

@MohitGupta121 Kindly review this pr.


Preview Tag

Do the preview tags on this page need to be removed now? AFD standard/premium is now GA I believe
https://azure.microsoft.com/en-au/updates/generally-available-the-new-azure-front-door-a-modern-cloud-cdn-service/

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

ID: 982cf7d2-424b-782f-487e-aab8b79c3d48
Version Independent ID: 6ce79466-5cc3-c2eb-e967-80c151890984
Content: Azure Front Door: Endpoint Manager
Content Source: articles/frontdoor/standard-premium/concept-endpoint-manager.md
Service: frontdoor
GitHub Login: @duongau
Microsoft Alias: qixwang

@pnarsi , thank you for the feedback. We'll review this and get back to you shortly!

@pnarsi , I have submitted a PR to remove the word Preview from this doc and it will be updated soon.
We are closing this issue for now. If there are further questions regarding this matter, please reply and we will gladly continue the discussion.


data_ctx in MLP tutorial is defined but never used

I have been working through the gluon tutorials and found that in http://gluon.mxnet.io/chapter03_deep-neural-networks/mlp-gluon.html after the declaration of:
data_ctx = mx.cpu()
data_ctx is never actually used in the code. Unless I'm just being dense.

Actually I would suggest author to remove most of the data_ctx in examples except maybe for one specific topic. It's a simple and straight concept but usually won't help a lot in simple/small-data examples.


x/mobile: java.lang.UnsatisfiedLinkError: Native method not found: go.Seq.init:()V on API 19

Please answer these questions before submitting your issue. Thanks!
What version of Go are you using (go version)?
go version go1.7.5 linux/amd64
What operating system and processor architecture are you using (go env)?
GOARCH="amd64"
GOBIN=""
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/home/max/dev/workspace/go"
GORACE=""
GOROOT="/home/max/dev/go"
GOTOOLDIR="/home/max/dev/go/pkg/tool/linux_amd64"
CC="gcc"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build775467473=/tmp/go-build -gno-record-gcc-switches"
CXX="g++"
CGO_ENABLED="1"
What did you do?
I'm building a simple native library with gomobile bind. On Android Kitkat, my app, built with aar created by gomobile crashes on some devices. I'm getting crash reports like that:
Exception java.lang.UnsatisfiedLinkError: Native method not found: go.Seq.init:()V
go.Seq.init (Seq.java)
go.Seq.<clinit> (Seq.java)
com.justmax437.sigcheck.Sigcheck. (Sigcheck.java)
...
Not sure if older versions also affected, my minSdkVersion is 19. Lolipop and newer seems to work as expected, no such crashes there.

Is that the full crash trace? I suspect this error is caused by failing to load and initialize the Go native JNI library.


Update naming of RampID user id module

Thanks for improving the documentation 😃
Please give a short description and check the matching checkboxes to help us review this as quick as possible.
🏷 Type of documentation

[ ] new bid adapter
[ ] update bid adapter
[ ] new feature
[x] text edit only (wording, typos)
[ ] bugfix (code examples)
[ ] new examples

You might consider adding a note like (formerly IdentityLink) but this is ok.


⚠ ClamAV has degraded performance

In e51c913, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 69 ms

Resolved: ClamAV performance has improved in 000269d after 11 minutes.


Light World LV save to file

I need it for something in magical-glass, it may be used later on for light world saves.

Maybe in another time, I can't really find a good use for this.


Multiple locations?

Was trying to help out with the location branch, but some companies have multiple locations like Bitly for example is in Denver, San Francisco, and New York. Put them all down or?

Yeah, put them all down separated by a semicolon and in alphabetical order please. If the company supports remote we can treat that as a location too. Thanks for your help with adding locations!

I updated CONTRIBUTING.md to include this info


Footer and Nav Component for Mobile Website

Footer and Nav Component Design by Shalom
Deadline: 14th of October

In progress

Thank you @Delight362. @activus-d we have a few pending tasks, But that will commence once the components are ready.

@iamkingsleey i am done with my task. Expecting a review soon, thanks

@ShalomOhuegbe I just did a review as well as an iteration suggestion on Figma. Please, check

@LamiWilliams @iamkingsleey if this issue is completed, can we please close it up?

Hi @Maryblessing This has been completed and can be closed. Thanks!

Thank you @LamiWilliams
@kaxada please help close this issue


[Fix #8582] Add new Layout/BeginEndAlignment cop

Fixes #8582.
This PR adds Layout/BeginEndAlignment cop to solve the issue.
The following is an example:
% cat example.rb
foo = bar rescue "{}"

Before
The alignment was misaligned because begin was not awake.
% rubocop -a example.rb
(snip)

% cat example.rb
foo =
  begin
         bar
  rescue StandardError
    '{}'
       end

After
Awakened by begin, so aligned.
% rubocop -a example.rb
(snip)

% cat example.rb
foo =
  begin
    bar
  rescue StandardError
    '{}'
  end

I was first planning to add begin processing to Layout/EndAlignment cop.
However, Layout/EndAlignment cop with EnforcedStyleAlignWith: keyword (default) was not preferred code in the following:
longlonglonglonglonglonglonglonglong ||= begin
                                           do_something
                                         end

This style has been found to have very long line length with RuboCop's own code.
Therefore, since this PR would like to use EnforcedStyleAlignWith: start_of_line by default against foo ||= begin, this PR added the new cop.
# EnforcedStyleAlignWith: start_of_line (default)
longlonglonglonglonglonglonglonglong ||= begin
  do_something
end

This solution allows configuration with minimal impact on existing code.
It is configurable if user want to align to begin.
# EnforcedStyleAlignWith: begin
longlonglonglonglonglonglonglonglong ||= begin
                                           do_something
                                         end

This PR also makes Layout/RescueEnsureAlignment cop aware of new Layout/BeginEndAlignment cop's config to align rescue indents.

Before submitting the PR make sure the following are checked:

[x] Wrote good commit messages.
[x] Commit message starts with [Fix #issue-number] (if the related issue exists).
[x] Feature branch is up-to-date with master (if not - rebase it).
[x] Squashed related commits together.
[x] Added tests.
[x] Added an entry to the Changelog if the new code introduces user-observable changes. See changelog entry format.
[x] The PR relates to only one subject with a clear title and description in grammatically correct, complete sentences.
[x] Run bundle exec rake default. It executes all tests and RuboCop for itself, and generates the documentation.

I'm fine with proposed solution, but I think we need to update the descriptions of BeginEndAlignment and EndAlignment to make it clear why we have two cops and what exactly are their responsibilities. Even for me the current arrangement is slightly confusing, so I can imagine it'd be even more confusing for our casual users.

Ah, exactly! I updated the docs.

Awesome cop. I always thought the default  begin/end alignment was strange 😉


Implement some fixes for string field use

Add special handling to translate std::string to Coral::String/NativeString to string and back again.

Would be nice to translate bool to Coral::Bool32 as well :)

Bool field translations have now been implemented aswell


Will the Mistral AI model be supported in the future?

Will the Mistral AI model be supported in the future?

This library is not available yet, but you can follow the account for updates. I'm planning to release support for additional libraries under Ranul. The new library will be named Betalgo.Ranul.Mistral .


fix: make blockies match metamask

This makes the example app blockies look like elsewhere (etherscan, metamask etc).
Two fixes:

lowercase the address (the char codes are the seed to the random colors so it has to be precise)
set the size to 8 (that's the number of tiles across) and use scale to make it bigger/smaller

refs:

metamask lowercasing the address
blockies default size = 8

fixes [#43]

/cc @bhavya2611 @m-005

LG


Nested document supported?

So - when trying to insert a json document with nested data... I get a 202 response and the updateId changes (ie. no error), but no document is actually inserted. If I remove all of the nested arrays and just leave in first level keys - it inserts fine.
Is this a known/expected behavior? The original doc is not overly large (3k). The data is an aws ec2 "describe instances" result for a single instance - I can provide a sanitized copy if that helps.

Hey @bortels,
It has been fixed and is now supported by MeiliSearch on the master branch, we will release a v0.9.1 version on the engine probably at the end of the week. However if you need this feature rigth now you can compile MeiliSearch yourself using the master branch.
Thank you for your interrest in the project :)


Disk usage does not show full info.

I'm using KOPF version 1.5.0.
2 UI issues.

Disk usage does not show full info. I can not show how many disk space is free, total.
Sometime it can not show "Total data in cluster".

@phungle could you send a screen shot explaining what you mean?
and which version of elasticsearch are you running?

Hi Leonardo,
I�m upgrading disk space for our cluster.
We have 3 instances.
To upgrade, I create new instance, add to cluster and turn off one of them.
New instance will have new kopf v1.5.0. Old instance has old version.
I think they have conflicted.
Now all of them have kopf v1.5.0 & it works perfectly.
Thanks,
Phung Le
On Apr 22, 2015, at 13:37, leonardo menezes<EMAIL_ADDRESS>wrote:

@phungle could you send a screen shot explaining what you mean?
and which version of elasticsearch are you running?
�
Reply to this email directly or view it on GitHub.

@phungle Good to hear. Did you also change elasticsearch versions? There should be no conflict between kopf version, its just javascript running on your browser :)


Dependabot auto updates

It still needs lot of improvement, mainly on the external flash and the stm32f730

Nope, n0110 isn't a thing in the emulator yet, because there isn't yet any flash emulation. However, most of the other thing should already be ready (the screen driver emulates pushing / pulling (thanks to boricj), there's emulation for crc, rng,...)

This has been enabled at organization level (minus automatic PRs, which may be done later if/when the project stabilizes and hits release status with tests).


ERROR: Could not build wheels for fairseq, pyworld, which is required to install pyproject.toml-based projects

errorlog.txt
Solutions tried that didn't work

Installing Windows SDK
Installing Visual Studio Build Tools
Installing C++ Build Tools
Installing Python 3.9
Installing Python 3.10
Swapping from VSC/BuildTools 2022 to VSC/BuildTools 2019
Clean wipe/reinstall of everything

These are issues with your Python environment. Consult Python documentation for issues not related to this project.


Package json improvements

I've created some improvements in package.json parsing.
I've added possible keys for main package file. Some of them are more common and some of them are less. But I've seen all of them in use.
I've also added support for linking executable files which works similar as for main files.

This is also great.


raft: check leader request when become_follower after recv msg with higher term

see https://github.com/coreos/etcd/issues/8553 and https://github.com/coreos/etcd/pull/8339

seem the etcd doesn't merge these PRs.

https://github.com/coreos/etcd/pull/8339  already merged

Cool

LGTM


refactor: simplify three lines code in AbstractSQL.java

replace foreach statement with Collections.addAll

@xdshent Thx!


Support insulin curves to reflect realistic insulin curves and distinguish between regular fast acting and Fiasp

Enhancement to iob/calculate.json to use real curves and allow a choice between Fiasp and standard fast acting during set-up.
The curves are available at https://github.com/LoopKit/Loop/issues/388
Potential issues include variation in peak time when scaling curves by DIA and when to cut off action.
Also question whether we should have standard curves by default and require an enable flag to swap those out for fiasp or whether it should be included in the interactive setup.
I'll submit a branch to allow users to test my Fiasp curves once tested over the weekend, but no setup configuration work has yet been done.

I have been using the referenced curves live for about 12h and have found a much better correlation with observed data over the last 2 weeks.  My modification to calculate.js, based on Tim's work, is available here:
https://gist.github.com/mgranberryto/e5116dbc314cdf78513f4d185684b8a5

My branch is at https://github.com/sulkaharo/oref0/tree/fiasp
Added an unit test, too. Will add more soon

I'm running on the Fiasp curve successfully now for a couple of hours. Will report back when run for a longer duration. So far so good.

Been running the Fiasp curve for the best part of a day now with a five hour DIA. It's definitely working more effectively than the older shape curve, and has the added benefit of not missing the tail and having the resultant stacking. All in all an effective change for me.

Just pushed a new version of my brach, which adds customizing the peak time OR DIA for Fiasp. See attacked graphs for what IOB and activity curves look at 45, 55 and 65 minute settings.

I have a problem with the use of the function t^n \exp(-n*t/ \tau)  where n is a non-integer. I originally suggested that type of function as it is the response of a second/third order linear system with repeated roots to an impulse with 0 initial conditions. Such systems are commonly used to model insulin action.
When n is not an integer we loss integrability of the function and it ceases to be a solution to the system. It is just a function that seems to fit the data. I would prefer to use a linear combination of: $a t \exp(-t / \tau) + b t^2 \exp(-t / \tau)$ instead of $n=1.45$ to better fit the fiasp data.

Why does that matter? Isn't data fit the only concern at the end of the day?

Yes, the fit is the most important part. And I think this is a big improvement on the old function.
However, there is a lot of literature backing the use of second and third order systems to fit insulin data. These systems are usually fit on data sets with large numbers of samples. By being  consistent, I think, we're more likely to have a model that works for the largest number of people in the largest number of cases.
To me, n=1.5 seems an arbitrary choice based off one data set. We also want integrability to find IOB data. I think we could acheive just a good a fit from  a function that is consistent with the underlying theory and have the added benefit of integrability and easier to understand parameters.

Pardon my mathematical ignorance: Is there some fundamental sense in which you can't take the integral of an exponential function unless the exponent is an integer?
I'd be fine with linearly combining the two functions to achieve approximately the same result if that makes the math easier.

@tepidjuice and @sulkaharo : do you already see some impact on better blood glucose values and/or less glucose variability? Or is to early to say something of the effect of the new formulas?
Keep up the good work. If there is something I can help to bring this forward, please let me know.

You can take the integral but it doesn't have a closed form. But I think it's also important to be consistent with the theory. To summarise most models of insulin action look like atexp(-t/\tau) + b*t^2 \exp(-t / \tau) or similar. These models have been widely tested so I think there is benefit in being as close to them as is feasible. For example, what if there's something particular about the data set that was used to get n=1.5?

@PieterGit I think this is a big improvement in insulin modelling for openaps. I couldn't say anything about improved results but I like the smaller peak and extended tail.

I think this discussion misses the point. The best fit curves are derived from a set of glucose clamp data that is presented from a decent sample size. Whilst it appears as "one data set" it's not as though it's one individual.
Speaking from a personal use case perspective, it's significantly better than what was in place previously with using Fiasp and has mitigated the missing tail loading I was seeing with the older curve. And the five hours DIA does seem realistic from my use experience.
I think one of the issues we have is that there is a massive tendency to underestimate the longevity of insulin in the system, mostly as an emotional response to not seeing much effect, when the physiological reality is that it lasts a lot longer.

Morning ;) quick Q: my looping endo Frank @efbest was asking me about the new Fiasp curves and he would like to test, what, where (repo) needs to be done for testing? Thanks!

It's too early to say definitely. Early signs are good though! Sadly our current sensor is noisier than usual, so I can't give out any meaningful variability metrics. Time on range & projected A1C are extremely good so far. I'll post instructions on what to test / what the settings are tomorrow.

I want to chime in on the non-Fiasp use case.  I have been running with the unscaled formula (a DIA of 5h), and have had very good results for 2/3 days.  The first day was one of my worst in months, probably due to poor insulin absorption at a new pump site and insulin suddenly absorbing 6h after changing the site out.
For the other days, my overnight lines have been completely flat about +/- 3 mg/dl from target.  Daytime results have been good, but UAM is now too conservative and I would usually do better with more insulin delivered earlier for protein rises.  Eggs in particular lead to poorer results now than they did before, but lows don't seem to be a concern either.  My loop previously had a tendency to overcorrect at times and oscillate wildly after large meals and I am now seeing a reasonably quick and stable return to target.

I've been wading through this discussion as well as the one on Loop issue 388.  One thing I notice is that people are mixing insulin concentration curves and insulin action curves.  If the y axis is a concentration (eg pmol/L or microunits/ml), then it is a concentration curve measures in a blood draw.  If the y axis units are glucose disposal (eg mg/kg/min), then these are insulin action curves typically measured in a clamp study.
Examples of both curves for Novolog vs Fiasp can be found in this document
The concentration curves are on page 26, action curves on on 34.

The insulin action curves lag significantly behind the concentration curves.  In both types of curves, Fiasp is faster than Novolog.
The "Walsh" curves are based on insulin action, not concentration.
The DIA (duration of insulin action) used by pump manufacturers in their insulin on board calculators is not uniform.  Minimed uses a curve and defines the DIA as when 10% of insulin action remains.  Other manufacturers use a simplified linear model where the DIA is when 0% of insulin action remains.
Insulin action increases as glucose concentration increases.  Most insulin action curves are based on a euglycemic insulin clamp where the blood sugar is held normal (eg around 90-100 mg/dl) with a glucose infusion.

@rdsteed I hasn't realized that Medtronic "defines the DIA as when 10% of insulin action remains".  That actually makes quite a bit of sense, and might be a good way for us to proceed as well: calculate when 10% of IOB remains on our exponential curves and report that as DIA.
With regard to insulin action as a function of glucose concentration, isn't that effect counteracted by the increased resistance / decreased sensitivity seen with high BG, such that on net it takes proportionally more insulin to bring BG down from 300 to 200 than from 200 to 100?

@scottleibrand  No, simply having a high BG does not directly cause insulin resistance.   But things are seldom simple.

After a correction dose, the blood sugar initially moves slowly because of lag between insulin administration and insulin effect.  This can make the fall from 300 to 200 take longer than the fall from 200 to 100.
If a BG is high from a stressor, then more insulin will be needed.  Stress can cause epinephrine, cortisol, growth hormone, glucagon, etc. levels to shoot up, counteracting insulin.  But it is the stressor causing insulin resistance and the high BG, not the other way around.
If a BG drifts high because of a pump failure, then there is a lot of catching up to do to get the BG heading down.
If the BG goes high because of eating, then more insulin will be required until the food is absorbed, even if there is no insulin resistance.  Carbs on board can mimic insulin resistance.
If hypergycemia actually progresses to DKA, then there can be a positive feedback loop where getting sicker induces resistance which worsens DKA ...
Insulin resistance has a natural diurnal rhythm.  People tend to be most insulin resistant first thing in the morning.  Coming down from a morning high will be associated with improving insulin resistance, but that would have happened even without the hyperglycemia.

So, all things being equal, insulin action (defined as rate of glucose disposal) increases as BG rises.  The caveat is that in human physiology, all things are seldom equal.

@rdsteed With both starting from 0 COB and 0 IOB, it can often take more insulin to drop BG from 300 to 200 than 200 to 100.
While it may not technically be because of insulin resistance, I can correct a BG of 350 using the same ISF as I would with a lower BG and not end up in the target range (when I would if I correct from, say, 200).

@cjo20 It can seem paradoxical.
My answer to you is that if you have a BG of 350 one day and 200 the next day with the same 0 COB and 0 IOB, then on the 350 day, you are significantly more insulin resistant than you are on the 200 day.
The godfather of insulin resistance / syndrome X etc is Gerald Reaven.  He is now 89 years old, but in his heyday as researcher 50 years ago, he did the seminal work in the field of insulin resistance.  He devised an amazingly simple testing protocol where fasting individuals were given an infusion to shut down insulin production.  He then infused a fixed amount of insulin and glucose (adjusted for body size).  After 3 hours, the subjects reached a steady state BG.  The people most sensitive to insulin had the lowest BG's, and the people with the most resistance to insulin had the highest BG's.
With type 1 diabetes, you don't have to give an infusion to shut down insulin production by the body.  If you have a constant basal but are running higher than you usually would, then you are, in most respects, reproducing the original test that defined insulin resistance.  It isn't at all surprising that on a day of high insulin resistance, you would need much more insulin to put yourself into the target range.
Of course, on the days you run 350, it may not be true insulin resistance but a bad site or bad insulin mimicking insulin resistance.  Again, it's not at all surprising in these cases that a correction dose won't work very well.

@rdsteed is totally right that it's necessary to differentiate between insulin concentration and insulin action! In that respect the algos need some optimization: Today is day 4 using Fiasp and Exponential_curves. My experience is similar to what happened in April using Fiasp and bilinear curves: when BG is rising the algo kicks in too late and when BG is (slightly) decreasing Low_temp starts to early, especially after meals. And that looks like the algo is neglecting set BG targets completely!
My total daily insulin has gone up by 30%, ISF decreased from 29 to 22, mean BG increased from 105 to 118mg/dl. Using insulin apart (Novolog, NovoRapid) I needed no lead time between bolussing and eating; under Fiasp I waited 40 minutes and could't prevent an BG increase (see attached graph).

I definitely think the algos need optimization for other insulins!

@efbest did you just switch back to Fiasp? Our (and multiple others) have experienced it takes at least a couple weeks for the body to stabilize on Fiasp. For us, a resistence period started on the fourth day and it took four days for things to stabilize, the another week to reach the current predictable state. So for anyone who've been on Fiasp for less than 2 weeks, my assumption the issue is the body reacting unpredictably to insulin and people making the switch will have to bear it for some time. Any information as to why people experience a period of instability when adopting Fiasp are welcome.

@efbest You are describing behaviour with Fiasp that reflects what I know a lot of people have seen that aren't using a loop, namely that their insulin requirements increase along with a reduction in sensitivity. That seems consistent across many people (but not all) using Fiasp in CSII.
I get the impression that you were quite rare in not needing to bolus in advance when using Novorapid. I've not heard that from many people.
I don't think four days with Fiasp is really long enough to draw conclusions though. It took a month for me to reach stability.

Sorry if this is the wrong place to repost this. I made this comment: https://github.com/LoopKit/Loop/issues/388#issuecomment-318975664 on https://github.com/LoopKit/Loop/issues/388
I think implementing the equations directly has many advantages over the proposed exponential curves e.g. it's computationally simpler, more flexible and more accurate.

Shall we close this as complete now that it's in dev?


fix(cli/server): serve command expected positional args

Expect exactly one positional argument for the serve command with the path to the config file.

What type of PR is this?
bug

Which issue does this PR fix:
There's no reported issue AFAIK.
What does this PR do / Why do we need it:
This PR adds a check to the serve command to expect exactly one positional argument with the config file path. Improving the user experience.
If an issue # is not available please add repro steps and logs showing the issue:
Running zot serve (without passing a config file path) results in an index out-of-range error:
$ ./bin/zot-darwin-arm64 serve
panic: runtime error: index out of range [0] with length 0

goroutine 1 [running]:
zotregistry.dev/zot/pkg/cli/server.NewServerRootCmd.newServeCmd.func2(0x14002026800?, {0x10aede5e0, 0x0, 0x105f211c0?})
	zotregistry.dev/zot/pkg/cli/server/root.go:65 +0x1b0
github.com/spf13/cobra.(*Command).execute(0x14000354608, {0x10aede5e0, 0x0, 0x0})
	github.com/spf13/cobra@v1.8.0/command.go:983 +0x840
github.com/spf13/cobra.(*Command).ExecuteC(0x14000354308)
	github.com/spf13/cobra@v1.8.0/command.go:1115 +0x344
github.com/spf13/cobra.(*Command).Execute(0x10aab7538?)
	github.com/spf13/cobra@v1.8.0/command.go:1039 +0x1c
main.main()
	zotregistry.dev/zot/cmd/zot/main.go:10 +0x20

As a new user, I found this error to be misleading. I thought I had some error on the json file instead (I assumed that the config.json file would be used by default).
Testing done on this change:

With the change included in this PR applied, this is the output you get instead:
$ ./bin/zot-darwin-arm64-minimal serve
Error: accepts 1 arg(s), received 0
Usage:
  zot serve <config> [flags]

Aliases:
  serve, serve

Flags:
  -h, --help   help for serve

Passing 1 argument works as expected:
$ ./bin/zot-darwin-arm64-minimal serve non-existent.json
{"level":"error","error":"open non-existent.json: no such file or directory","path":"non-existent.json","time":"2024-04-10T10:42:52+02:00","message":"failed to read configuration"}
Error: open non-existent.json: no such file or directory
Usage:
  zot serve <config> [flags]

Aliases:
  serve, serve

Flags:
  -h, --help   help for serve

Automation added to e2e:

I've added a unit test that checks for an error when not passing the expected positional argument.
Note: I tried running make locally, but it is failing on my machine even when running it on the main branch. I don't expect this change to impact other parts of the code.
Will this break upgrades or downgrades?
No
Does this PR introduce any user-facing change?:

Running `zot serve` without the path to a config file won't result in an index out-of-range error anymore, it will show the help message of the command instead instructing to add the missing argument.

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

@ralgozino pls also GPG sign your commits.
https://docs.github.com/en/authentication/managing-commit-signature-verification/signing-commits

Interesting, I just realized that I have it setup only for my work email address, I will fix it.
Is it enough to GPG sign or should I also sign off the commit? (I see the check for sign off in Ci is failing).
I guess I will have to force push to overwrite the commit

@ralgozino pls also GPG sign your commits.
https://docs.github.com/en/authentication/managing-commit-signature-verification/signing-commits

Interesting, I just realized that I have it setup only for my work email address, I will fix it.
Is it enough to GPG sign or should I also sign off the commit? (I see the check for sign off in Ci is failing).
I guess I will have to force push to overwrite the commit

You would have to sign and sign-off also.

I should have addressed all your suggestions @rchincha, let me know if something else needs to be done.
Thank you for the review.

@ralgozino thanks for your PR.


Remove is_you from /api/user

is_you only exists to identify whether an anonymous user is you or not - instead the frontend can check this by having the backend provide the AnonymousProfile.id in the response

We decided the API can keep this for now


feat(core): TUI_VIEWPORT add new token

PR Checklist
Please check if your PR fulfills the following requirements:

[ ] The commit message follows Conventional Commits
[ ] Tests for the changes have been added (for bug fixes / features)
[ ] Docs have been added / updated (for bug fixes / features)

PR Type
What kind of change does this PR introduce?

[ ] Bugfix
[ ] Feature
[ ] Refactoring
[ ] Code style update
[ ] Build or CI related changes
[ ] Documentation content changes

What is the current behavior?
Closes #3540
What is the new behavior?
Does this PR introduce a breaking change?

[ ] Yes
[ ] No

is this the expected behavior?

is this the expected behavior?

Kind of. There's no better way for this dropdown to show, editor is too short. As for the top image, do you know why there's border instead of margin? Margin seems to behave the same, at a glance, and dropdown switches to down at the correct moment.

@waterplea Now I understand what happens at the time of the screenshot on cypress and why screenshots can sometimes behave this way
https://user-images.githubusercontent.com/12021443/217459813-da4824c2-be1f-463e-a74f-3cc9bc2f11c1.mov

@waterplea Now I understand what happens at the time of the screenshot on cypress and why screenshots can sometimes behave this way
https://user-images.githubusercontent.com/12021443/217460058-5f8c29d1-7ecd-49c0-9837-086b437b48b0.mov

But aren't we disabling animations for Cypress?

But aren't we disabling animations for Cypress? you are right
https://user-images.githubusercontent.com/12021443/217564739-df25845c-3783-49bf-b24f-31afdce23cd1.mov
https://user-images.githubusercontent.com/12021443/217564827-d2a00b1c-ae9c-4cf6-aacb-73697321cc83.mov

But aren't we disabling animations for Cypress? you are right

Maybe we should also set hide delay to 0.

@waterplea Maybe we should also set hide delay to 0.
https://github.com/Tinkoff/taiga-ui/pull/3643


Why can't a leader support multiple experiments?

Overview page is only designed for 1 experiment

top level header can be used to select experiments

Pioreactors page is only designed for 1 experiment. The latest experiment is retrieved from the database, and this populates MQTT topic strings, and then data is fetched for that experiment.

again, the top level header can be used to choose experiment, and the assigned Pioreactor workers are displayed

workers use the function get_latest_experiment_name which implies a single experiment is running.

new db table pioreactor_worker_assignments (TBD) exists. Workers should use a new function get_latest_assigned_experiment_name and hit a new endpoint to get their experiment name,

leader actions, like experiment_profile execute will grab the latest experiment.
TBD

OTOH,

mqtt_to_db_streaming is experiment agnostic
so is watchdog and  monitor, mostly
MQTT can support multiple experiment streams
So can the database

[ ] experiment profiles needs to decided how to handle if an pioreactor is not active, or if it's not assigned


Working with DAI or any ERC20 token (w/ Money-Legos)

One of the very basic things you need for DeFi is to simply work with DAI. This can either be accomplished in one of two ways (or more):

Forking off the mainnet and pointing to the actual DAI contract, or;
Creating a FakeDai token to work with (which is just an ERC20 that you can mint).

Any other ideas are welcome. Perhaps we should interview some existing DeFi projects about how they go about developing their dapps.

A tutorial focused on working with ERC20 tokens.

I wanted to avoid this cause theres tons of other blog posts which go into great detail on ERC20s

But not with money legos though

won't talk about ERC20 so much, just small snippets w/ money-legos that make it simple to call approve and transferFrom.


update tomato_watering.py boolean operator

Previously, the boolean operator - was used instead of ~ in tomato_watering.py.  This was throwing an error in numpy v1.13 and v1.14.

I signed it!

Thanks for the fix!


ImpersonateAnonymousToken expects THREAD_IMPERSONATE right before sta…

…rting the impersonation
As of now, the documentation of ImpersonateAnonymousToken service is vague at best. It is mentioned a valid thread handle has to be filled to the caller but no kind of access right mask is specified that the thread needs to have in order to begin the impersonation procedure.
As a matter of fact, this public Win32 service bases upon the NtImpersonateAnonymousToken NT system call in order to impersonate the system's anonymous logon token. That system call invokes the kernel mode service from the Object Manager, the ObReferenceObjectByHandle, with desired access mask of 100h value which is equivalent to 0x0100 and the documentation here demonstrates that.
If the thread handle object has such access then the system call happily grants impersonation to the calling thread, otherwise it outright fails with a NTSTATUS code of STATUS_ACCESS_DENIED (further translated and mapped as ACCESS_DENIED in Win32 world). With that being said, it doesn't hurt for the documentation to be accordingly updated with the remarks based off of these points.

@GeoB99 : Thanks for your contribution! The author(s) have been notified to review your proposed change.

@Karl-Bridge-Microsoft : Thanks for your contribution! The author(s) have been notified to review your proposed change.


AoP in 10-bts images

The angle is between 0 - 180 degrees with low range , so the question is how to normalize it to be able to show it in 16-bts ?

do you mean the angle for the HSV color image ?
for the HSV color image it's just for vizualisation so the HSV 8bits color image is fine.
for the angle of polarization that will be exploited latter: a floatting image is the right way to represent it

No in fact the angle of polarization, so after computing DoP and AoP there is no need to convert them back to CV_16U ? and for visualization we can keep CV_8U or the CV_32F in this case

yes, no need to convert them back to CV_16U


unsafe foods blog number 1

added first blog post for our group

There seem to be two files added in the _posts directory? Maybe you changed the file name and forgot to git rm the other one? Either way, please don't use ALL-CAPS in the file-name.

Great! Just a couple of small comments on my side. I'll let @valentina-s review and merge.

Looks great! Just one typo - fiure instead of figure in the same paragraph as the disconnected data.


added link to RapidAPI

Hey there. I added a link in your README to a tool where you can test out Alchemy Text API calls in your browser before using your SDK to connect to the API. I've added it to these other SDKs (Telegram, Shopify and LinkedIn) and gotten feedback that it was pretty useful. If anything, let me know what you think and if you have any feedback. I'm part of the team that built this tool and we're always looking to make it better!

@phillip-seymor is this an ad for a closed-source alternative client?


Fixed one broken link issue #9951

Notes for Reviewers
This PR fixes only one broken link .A PR has already submitted  from another branch.
This PR fixes #9951
Signed commits

[x] Yes, I signed my commits.

🚀 Preview for commit ae2a2b8f01cd64c304dca1c7acb667b14cc08362 at: https://65a2e0aa403346f3401bee7f--meshery-docs-preview.netlify.app

Do sign-off your commit, please. See instructions above. 👍

🚀 Preview for commit 4522fed44298a88990adc5c478dbdddc4a0b90d2 at: https://65a30dde1e60c10e20297a0c--meshery-docs-preview.netlify.app

Hi @neerajmanivarnan   ,
Thanks for your PR! I encourage you to share this in the Website Meeting tomorrow at 6:30 PM IST. Share your screen, and walk us through it. It's cool to take and share feedback. Check the Doc here to include this PR.
You're welcome at the meeting
Check to community calendar for more details of meetings at Layers.

Closing in lieu of #9952


Fix varmat tests to skip complex signatures

Summary
This PR fixes varmat tests so that they now skip any signature with complex inputs.
Checklist

[x] Copyright holder: Rok Češnovar
The copyright holder is typically you or your assignee, such as a university or company. By submitting this pull request, the copyright holder is agreeing to the license the submitted work under the following licenses:
- Code: BSD 3-clause (https://opensource.org/licenses/BSD-3-Clause)
- Documentation: CC-BY 4.0 (https://creativecommons.org/licenses/by/4.0/)

@SteveBronder @WardBrian I disabled the address sanitizer here, because this PR needs to be merged first in order to unblock everyone.
As I stated in the other PR, this seems to be a weird issue that only pops up in the Docker container, no one has been able to reproduce it. We should add it back before the release or find a different way of running checks with the sanitizer.
Need one of you to re-approve in the next 8hours before the tests pass :)

==12319==LeakSanitizer has encountered a fatal error.

==12319==HINT: For debugging, try setting environment variable LSAN_OPTIONS=verbosity=1:log_threads=1

==12319==HINT: LeakSanitizer does not work under ptrace (strace, gdb, etc)

Based on this stackoverflow thread it looks like the container doesn't have the required privileges ( we refactored to avoid running as root or --privileged ).
I think that just adding --cap-add SYS_PTRACE in the Jenkinsfile should fix this error with Docker.
@rok-cesnovar can I test it in this PR or should I create another one after this one is merged?

Lets merge this one to unblock everyone else and then debug without the added pressure.


Token Refresh is not working as expected when used in concurrent async environments

The 1 hr token expiry in clients is causing an issue where there is no request that's sent out. It might be because of the mutex being checked and updated at the same moment.

Looks like I we get this error when we try to decode JWT:
[2024-11-13T19:51:16Z INFO  syncflow_text_egress_actor::session_listener_actor] Session token generated: Err(
        TokenError(
            JWTError(
                "ExpiredSignature",
            ),
        ),
    )


Removed the reserved ID, tests still pass

closes #33

Coverage remained the same at 77.778% when pulling 73fd1a622419579e92df38bd9c3b35849500fd6a on feature/remove-reserved-id into 74810c6ee0b7cbb0773f3da2e9860d7b164a8706 on master.

option: id
Mongoose assigns each of your schemas an id virtual getter by default which returns the documents _id field cast to a string, or in the case of ObjectIds, its hexString. If you don't want an id getter added to your schema, you may disable it passing this option at schema construction time.
from mongoose docs

I believe this is a breaking change, shouldn't we need a mayor version for this?
I had "typegoose": "^3.0.0", and suddenly our app crashed becouse I use ".id" a lot without declaring it on the schema. So my code was relying on this reversed Typegoose Id.

Hi @JoseLuisGarciaOtt
We use .id in our tests and they still pass. In my editor it says the following for the .id
property) MongooseDocumentOptionals.id: string
The string version of this documents _id.

How do you create your instances? We use the following method and this way car.id is defined.
const car = await Car.create({
      model: 'Tesla',
    });

Thanks for reporting the issue.
Cheers,
Daniel


[#5928] fix(CLI): Fix columns details command produces no output

What changes were proposed in this pull request?
Fix columns details command produces no output, when command without --audit option, cli should tell user that command is not support.
Why are the changes needed?
Fix: #5928
Does this PR introduce any user-facing change?
NO
How was this patch tested?
local test.

Hi @justinmclean @xunliu @tengqm , could you please review this PR when you have time? I’d really appreciate your feedback.


Can't extract html5 player

Wanted results:
Video downloads and converts to mp3 flawlessly
What happens:
youtube-dl crashes after a "unable to extract html5 player" warning.
debugging output:
$ youtube-dl -x --audio-format mp3 --verbose https://www.youtube.com/watch?v=9BB4YNmXkI0
[debug] System config: []
[debug] User config: []
[debug] Command-line args: [u'--verbose', u'https://www.youtube.com/watch?v=9BB4YNmXkI0']
[debug] Encodings: locale UTF-8, fs UTF-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2<IP_ADDRESS>
[debug] Python version 2.7.10 - Linux-4.2.0-16-generic-i686-with-Ubuntu-15.10-wily
[debug] exe versions: avconv 2.7.2-1build1, avprobe 2.7.2-1build1, ffmpeg 2.7.2-1build1, ffprobe 2.7.2-1build1, rtmpdump 2.4
[debug] Proxy map: {}
[youtube] 9BB4YNmXkI0: Downloading webpage
[youtube] 9BB4YNmXkI0: Extracting video information
WARNING: unable to extract html5 player; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
[youtube] {22} signature length 49.43, html5 player None
ERROR: Signature extraction failed: Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/youtube_dl/extractor/youtube.py", line 658, in _decrypt_signature
video_id, player_url, s
File "/usr/lib/python2.7/dist-packages/youtube_dl/extractor/youtube.py", line 550, in _extract_signature_function
raise ExtractorError('Cannot identify player %r' % player_url)
ExtractorError: Cannot identify player u'https://s.ytimg.com/yts/jsbin/player-en_US-vflFEzfy7/base.js'; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
(caused by ExtractorError(u"Cannot identify player u'https://s.ytimg.com/yts/jsbin/player-en_US-vflFEzfy7/base.js'; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.",)); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/youtube_dl/extractor/youtube.py", line 658, in _decrypt_signature
video_id, player_url, s
File "/usr/lib/python2.7/dist-packages/youtube_dl/extractor/youtube.py", line 550, in _extract_signature_function
raise ExtractorError('Cannot identify player %r' % player_url)
ExtractorError: Cannot identify player u'https://s.ytimg.com/yts/jsbin/player-en_US-vflFEzfy7/base.js'; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/youtube_dl/YoutubeDL.py", line 650, in extract_info
ie_result = ie.extract(url)
File "/usr/lib/python2.7/dist-packages/youtube_dl/extractor/common.py", line 273, in extract
return self._real_extract(url)
File "/usr/lib/python2.7/dist-packages/youtube_dl/extractor/youtube.py", line 1104, in _real_extract
encrypted_sig, video_id, player_url, age_gate)
File "/usr/lib/python2.7/dist-packages/youtube_dl/extractor/youtube.py", line 668, in _decrypt_signature
'Signature extraction failed: ' + tb, cause=e)
ExtractorError: Signature extraction failed: Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/youtube_dl/extractor/youtube.py", line 658, in _decrypt_signature
video_id, player_url, s
File "/usr/lib/python2.7/dist-packages/youtube_dl/extractor/youtube.py", line 550, in _extract_signature_function
raise ExtractorError('Cannot identify player %r' % player_url)
ExtractorError: Cannot identify player u'https://s.ytimg.com/yts/jsbin/player-en_US-vflFEzfy7/base.js'; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
(caused by ExtractorError(u"Cannot identify player u'https://s.ytimg.com/yts/jsbin/player-en_US-vflFEzfy7/base.js'; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.",)); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
More info:
The version I have is the latest in the ubuntu official repositories.

You are using an outdated version of youtube-dl. Read our FAQ if you have troubles updating.

WOW dstftw! That was fast!!! Anyway, this fixed the problem, thank you very, very much.


[Account Menu] Second click on the User icon doesn't close menu

Environment Windows 10, Chrome Version 103.0.5060.134
Reproducible: Always
Preconditions:
Go to https://horondi-front-staging.azurewebsites.net/
Log in as User
Steps to reproduce:
Click on User icon to open Account Menu
Click on User icon second time to close Account Menu
Pay attention to the Menu
Actual result: When User clicks on User icon second time Account Menu doesn't close
https://user-images.githubusercontent.com/33963679/180157487-83450e41-8629-446c-96d9-88a38d9cc879.mp4
Expected result: When User clicks on User icon second time Account Menu should close

@SazonenkoVictoriia  I would like to take this issue and try fixing it.


Show validation errors on application/component creation

Fixes

https://issues.redhat.com/browse/HACBS-985
https://issues.redhat.com/browse/HACBS-986
Description

API errors are now surfaced in the form, so users can make changes and submit.
Fixed Add component issue.

Type of change

[x] Bugfix

Screen shots / Gifs for design review

Application creation:

Component Creation:
edit mode will be automatically enabled in case of errors in a component name field.

Integration Test:

How to test or reproduce?

Go to Create application flow

Try to use the existing application/component names.

Tests
  Submit Utils
  onApplicationSubmit
    ✓ should throw application name already exists error (4 ms)
    ✓ should throw same message from api response (1 ms)
    ✓ should create the application (1 ms)
  onComponentsSubmit
    ✓ should throw component name already exists error (1 ms)
    ✓ should throw component name already exists error when multiple components is passed (1 ms)
    ✓ should not throw error if the error object name mismatches with provided components (1 ms)
    ✓ should throw same message from api response (1 ms)
    ✓ should create the component

EditableLabelField
   ✓ should set the component name field to editable mode and show the inline error message (16 ms)

Browser conformance:

[x] Chrome
[x] Firefox
[x] Safari
[ ] Edge

cc: @christianvogt @dheerajodha

@christianvogt @karthikjeeyar  Also wondering for the "Component already exists" scenario, are we auto incrementing the autogenerated name? Or do we always just use the runtime to generate so if they add two things that use the same runtime they will get the "already exists" error?

@christianvogt @karthikjeeyar Also wondering for the "Component already exists" scenario, are we auto incrementing the autogenerated name? Or do we always just use the runtime to generate so if they add two things that use the same runtime they will get the "already exists" error?

@beaumorley The runtime is always being used as the component name and it throws the error when we try to use that runtime for the second time.

@beaumorley I have updated the PR, in case of error the component name field will be put into edit mode. PTAL a look at the  updated screenshots.

/lgtm
/approve


Fix pinch crash in touch-responsive views.

Fork and rebase of @gillessed's PR https://github.com/facebook/react-native/pull/13166 which has gotten stale.
From original PR:
Motivation (required)
Multiple react native developer (including myself) have run into a crash with the react-native-photo-view library (and possibly others). The common solution to this problem lies in the underlying java code, and thus requires a change in the react native source.
The stack trace I am getting is the same as listed here alwx/react-native-photo-view#15.
There was a PR to fix this (#12085) but it was closed. In response to the comments there, in my PR, I do log the exceptions. I don't think we can get any closer to the exception because in the next level of the stack trace, we are in the android sdk code.
Looking at some stack overflow pages and the android bug tracker, it seems that this is the common solution to this bug, and does not cause any impact any functionality.
https://code.google.com/p/android/issues/list?can=1&q=pointerindex+out+of+range&colspec=ID+Status+Priority+Owner+Summary+Stars+Reporter+Opened&cells=tiles
Test Plan (required)
I have manually tested this by compiling react native android from source and have confirmed the exception still gets hit and logged, but does not cause the app to terminate.

Hi there,
could someone restart the circle CI job on timeout and review this ?
This issue is encountered on many android apps with pinch functionnalities and right now the only work around is to maintain a fork of React native to avoid crashing the app. I don't mind helping or fix tests if that is an issue, just tell me.


Structure Validator giving incorrect segment Set ID in OBX error when multiple OBRs present

When the Structure Validator reports an error, it attempts to give the user the specific location of the error by providing the Set ID of the segment as well as the line number in the file. When there are multiple OBRs in the message and the error is in an OBX segment that comes after an OBR that has Set ID > 1, the set ID given to the user is incorrect.
Example:
MSH|^~\&|^2.16.840.1.114<IP_ADDRESS>.9^ISO|CT^2.16.840.1.114<IP_ADDRESS>42^ISO|PHINCDS^2.16.840.1.114<IP_ADDRESS>.10^ISO|PHIN^2.16.840.1.114222^ISO|20230309203637||ORU^R01^ORU_R01|HL764049A01000115AE0AAC4822DC3A8D00|P|2.5|||||||||NND_ORU_v2.0^PHINProfileID^2.16.840.1.114<IP_ADDRESS>^ISO~TB_Case_Map_v2.0^PHINMsgMapID^2.16.840.1.114<IP_ADDRESS>^ISO
PID|1||PBWEMSMUPCBAWNH^^^&Maven EDSS&ISO||~^^^^^^S||19750301000000|M||2028-9^Asian^2.16.840.1.113883.6.238|^^Stamford^09^06902^^^^09001|||||||||||2186-5^Not Hispanic or Latino^2.16.840.1.113883.6.238||||||IND^INDIA^1.0.3166.1
OBR|1|""|99968416^^Maven EDSS^ISO|PERSUBJ^Person Subject^2.16.840.1.114<IP_ADDRESS>4|||20131227000000|||||||||||||||20230309203637|||C||||||10220^Tuberculosis^2.16.840.1.114<IP_ADDRESS>7
OBX|1|CWE|DEM114^Birth Sex^2.16.840.1.114<IP_ADDRESS>|1|F^Female^2.16.840.1.113883.12.1||||||F
OBX|2|CWE|DEM126^Country of Birth^2.16.840.1.114<IP_ADDRESS>|1|USA^USA^1.0.3166.1||||||F
OBX|3|CWE|DEM153^Detailed Race^2.16.840.1.114<IP_ADDRESS>|1|2029-7^Asian Indian^2.16.840.1.113883.6.238||||||F
OBX|4|CWE|DEM2003^US Born^2.16.840.1.114<IP_ADDRESS>|1|N^No^2.16.840.1.113883.12.136||||||F
OBX|5|TS|DEM2005^Date Arrived in US^2.16.840.1.114<IP_ADDRESS>|1|201210||||||F
OBR|2|""|100468416^^Maven EDSS^ISO|NOTF^Case Notification^2.16.840.1.114<IP_ADDRESS>4|||20131227000000|||||||||||||||20230309203637|||C||||||10220^Tuberculosis^2.16.840.1.114<IP_ADDRESS>7
OBX|1|CWE|INV107^Jurisdiction Code^2.16.840.1.114<IP_ADDRESS>|1|09001^Fairfield County^2.16.840.1.113883.6.93||||||F
OBX|2|CWE|INV109^Case Investigation Status Code^2.16.840.1.114<IP_ADDRESS>|1|29179001^Closed^2.16.840.1.113883.6.96||||||F
OBX|3|TS|INV111^Date Reported^2.16.840.1.114<IP_ADDRESS>|1|20131206||||||F
OBX|4|SN|INV165^MMWR Week^2.16.840.1.114<IP_ADDRESS>|1|^50||||||F
OBX|5|TS|INV166^MMWR Year^2.16.840.1.114<IP_ADDRESS>|1|2013||||||F
OBX|6|ST|INV173^State Case ID^2.16.840.1.114<IP_ADDRESS>|1|2013-CT-000078724||||||F
OBX|7|TS|INV177^Date First Reported PHD^2.16.840.1.114<IP_ADDRESS>|1|20131206||||||F
OBX|8|CWE|NOT109^Reporting State^2.16.840.1.114<IP_ADDRESS>|1|09^Connecticut^2.16.840.1.113883.6.92||||||F
OBX|9|CWE|NOT116^National Reporting Jurisdiction^2.16.840.1.114<IP_ADDRESS>|1|09^Connecticut^2.16.840.1.113883.6.92||||||F
OBX|10|CWE|TB080^Reporting Address City^2.16.840.1.114<IP_ADDRESS>|1|^^^^Stamford||||||F <---ERROR IS HERE IN OBX[10]

Error message contains:
               "line": 19,
                "column": 69,
                "path": "OBX[15]-5[1]",

The Set ID in this case should be 10, not 15.

That is not correct marcia, OBX[15] is related to the 15th instance of an OBX - it's not the OBX-2 value, but the index of the OBX on the message. (i.e., there are 14 OBXs before this one)

I understand that that is what the code is doing, but it is wrong from the standpoint of what the end user is going to interpret that number to mean.  For all other errors, that number in brackets does correspond to the set ID. So, it is unreasonable to expect that in this one case, it does not mean the same thing.

Closing this with the note that this may become an issue for the users when reading the report.


[WIP] Make tei_github service retrieve files modified in a time window

Part of #1536

Close in favour of #1623