Display wikipedia summary in artist details screen

implementation

[ ] given wiki data id from url-rels, make call to wikidata

eg. https://www.wikidata.org/w/api.php?action=wbgetentities&formatversion=2&ids=Q60989925&languages=en&props=sitelinks%2Furls&format=json&sitefilter=enwiki

{
    "entities": {
        "Q60989925": {
            "type": "item",
            "id": "Q60989925",
            "sitelinks": {
                "enwiki": {
                    "site": "enwiki",
                    "title": "Zutomayo",
                    "badges": [],
                    "url": "https://en.wikipedia.org/wiki/Zutomayo"
                }
            }
        }
    },
    "success": 1
}

[ ] given wikipedia url, use its api to get the exact page's extract

[ ] need to get the last part of the url (cause the title might have spaces)
eg. https://en.wikipedia.org/w/api.php?format=json&action=query&prop=extracts&exintro&explaintext&redirects=1&titles=Zutomayo

{
    "batchcomplete": "",
    "query": {
        "pages": {
            "62272299": {
                "pageid": 62272299,
                "ns": 0,
                "title": "Zutomayo",
                "extract": "Zutto Mayonaka De Iinoni. (Japanese: ずっと真夜中でいいのに。, lit. \"I wish it was midnight all the time\"), stylized as ZUTOMAYO, is a Japanese rock group that debuted in 2018. Secretive by nature, the group has never released a full member list, crediting different people for music, arrangements, and music video production each time. The only member reoccurring in all of the group's output is the vocalist, an unidentified woman named \"ACA-Ne\" (ACAね, a-kah-neh).Despite the little information released, the group is commercially successful. Zutomayo's three EP's have reached 8th, 1st, and 2nd on the Oricon Albums Chart, respectively. The group was also invited to perform at the 2019 Fuji Rock Festival a year after their debut.\n\n"
            }
        }
    }
}

Alternative that gives us html. Would need to render it though with something like https://github.com/ch4rl3x/HtmlText
https://en.wikipedia.org/w/api.php?action=query&exintro=&format=json&formatversion=2&prop=extracts&titles=Zutomayo

{
    "batchcomplete": true,
    "warnings": {
        "extracts": {
            "warnings": "HTML may be malformed and/or unbalanced and may omit inline images. Use at your own risk. Known problems are listed at https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:TextExtracts#Caveats."
        }
    },
    "query": {
        "pages": [
            {
                "pageid": 62272299,
                "ns": 0,
                "title": "Zutomayo",
                "extract": "
Zutto Mayonaka De Iinoni. (Japanese: ずっと真夜中でいいのに。, lit. \"I wish it was midnight all the time\"), stylized as ZUTOMAYO, is a Japanese rock group that debuted in 2018. Secretive by nature, the group has never released a full member list, crediting different people for music, arrangements, and music video production each time. The only member reoccurring in all of the group's output is the vocalist, an unidentified woman named \"ACA-Ne\" (ACAね, a-kah-neh).

Despite the little information released, the group is commercially successful. Zutomayo's three EP's have reached 8th, 1st, and 2nd on the Oricon Albums Chart, respectively. The group was also invited to perform at the 2019 Fuji Rock Festival a year after their debut.
"
            }
        ]
    }
}

other notes

https://en.wikipedia.org/api/rest_v1/#/Page content/get_page_summary__title_ ?

seems to give same data as extract, though only 1 paragraph

[ ] clicking "Read more" goes to wikipedia page
[ ] async query for it (could we achieve that using #254 and presenters?)
[x] #1058

GraphQL to get only the data we need (not needed)

GraphQL api: https://www.wikidata.org/wiki/Wikidata:Tools/For_programmers#GraphQL
Online playground: https://studio.apollographql.com/sandbox/explorer/?referrer=docs-content

query {
  entity(id: "Q1299") {
    ... on Item {
      sitelinks {
        site
        title
      }
    }
  }
}

{
          "site": "enwiki",
          "title": "The Beatles"
        },

This is missing the actual url that REST would have given us. And the title is not necessarily the last part of the path.
"enwiki": {
            "title": "The Beatles",
            "badges": [
                "Q17437796"
            ],
            "url": "https://en.wikipedia.org/wiki/The_Beatles"
        },

Unless all spaces are always replaced by _
References

https://stackoverflow.com/questions/8555320/is-there-a-wikipedia-api-just-for-retrieve-the-content-summary
compare: https://musicbrainz.org/artist/14d2a235-30e2-489f-b490-f9dc7d2c0861
wikipedia sandbox: https://en.wikipedia.org/wiki/Special:ApiSandbox#action=query&format=json&prop=extracts&titles=Stack Overflow&formatversion=2&exintro=1
wikidata api: https://doc.wikimedia.org/Wikibase/master/js/rest-api/
https://www.mediawiki.org/wiki/API:Presenting_Wikidata_knowledge

Reference covertart module

I'm thinking models and domain should be combined.
I'm creating a new repository in domain and a new model in model. Why should they be in different modules?

https://github.com/MohamedRejeb/compose-rich-editor for rendering html


Hot reload not working, How to display localhost:8080 with homestead

laravel Version: 5.5
Laravel Mix Version: "^1.0",
Node Version:  6.11.2
NPM Version: 3.10.10
Windows : 8 - 64 bit
Laravel Homestead

Hello i installed fresh laravel project version (5.5), i run npm install... everyting work fine, the only thing is when i run (npm run hot) in vm environment, no error shows  but (Hot module replacement) is not working,  when i typed localhost:8080 it also did not work .
i follow the instructions in this line for @JeffreyWay.
i added the line in the blade page it gave me this error.

please can someone help me ...

This was something kinda hard for me to grasp as well.

The key to making hot reloading work within a Laravel application is ensuring that all script sources reference the Node server URL that we just booted up. This will be http://localhost:8080. Now you could of course manually update your HTML/Blade files, like so:

...

https://github.com/JeffreyWay/laravel-mix/blob/master/docs/hot-module-replacement.md

Thanks @sifex! That worked for me.


Multiserver deployment problems

@Anahkiasen. This is not a real pull request (yet). More of a way to provide some context to a discussion.
I have been writing an Rackspace open cloud plugin for Rocketeer that allows one to deploy to a load balanced autoscale group. As the autoscale group changes all the time, the ip addresses are potentially different each deploy.  During development and attempted use of this plugin I discovered a few issues. I will raise some issues shortly to hopefully cover those.
The code below seems to be causing problem when I do a multi server deployment. Now I may have discovered a bug, or it maybe that I am just configuring rocketeer incorrectly. When I feed my 9 servers into a connection in config.php as an array I seem to get the deployment being attempted twice to the 1st server which then goes on to fail.
The snippet below demonstrates what it looks like. The $autoscale method addresses returns an array of associative arrays as one would expect.
'production-autoscale' => array(
  'servers' => $autoscale->addresses('AUTOSCALE_GROUP_NAME', 'deploy', true)
),

Then during deployment I get
production-autoscale/0 - OK
production-autoscale/1 - OK
production-autoscale/1 .. repeated (but fails after the first repeat).
I tracked it down seemingly to the code I removed in the PR. I don't understand how Rocketeer hangs together enough to know why the handle is returned repeatedly? Some kind of optimisation?
Any suggestions as to what the problem might be?
PS. I am loving Rockeeter by the way.  :heart:

Yeah the handle was cached as a micro-optimization. Can you send this PR to the develop branch instead though, this is where the most recent of the code is, will continue this with you on the new PR

Done. Now here https://github.com/rocketeers/rocketeer/pull/414


Bluetooth: Controller: ISOAL rx padding and other bugfixes

Based on interpretation of Clarification Errata ES-22876 Request for
Clarification - Recombination actions when only padding unframed PDUs
are received, it was decided that an SDU should be released as "Missing"
when only padding PDUs are received for any SDU.

https://bluetooth.atlassian.net/browse/ES-22876

Testing:
-- Receiving only padding PDUs for an SDU
-- Receiving leading padding PDUs (not an expected use case)
Signed-off-by: Nirosharn Amarasinghe<EMAIL_ADDRESS>

Could I get an Oticon review and approval for this? @mtpr-ot perhaps?


Parameterize Windows host OS version

Currently, the Windows host OS version is set via the -image windows-cloud/global/images/windows-server-2019-dc-for-containers-v20210212 parameter when launching the builder VM. This refers to a Windows Server 2019 image. This should not be hardcoded into the workflow; people should be able to choose a newer image, or a non-LTSC image, when building the container.

Done by 2defd1d - the host OS version is now controlled via https://github.com/falldamagestudio/UE-Jenkins-Images/blob/main/Scripts/Linux/tools-and-versions.json


json_to_sheet how set cell color?

hello, can i set the style of a cell with the json_to_sheet util?
thank you

I'm also looking for this answer

Looking for this, but as well for aoa_to_sheet() util.


accountDisplayDensity

Option to resize the display in the accounts panel.  Helpful for those users with a lot of accounts who want to see them all with out scrolling or with out ellipses on there moderately sized account names.
Options: Default; Compact; Slim
The compact and slim options also fix a small display error in the account header where the account name are cut off.  Visible when accounts use characters like lower case g.

Thanks!


chore(deps): bump voyager client version

Description
Bump voyager client version from 2.3.1 --> 2.4.0-dev.1
Checklist

[x] npm test passes
[x] npm run build works
[x] tests are included
[x] documentation is changed or added

Tried tested!


error when trying to get or use

go get returns error, while still downloading package:
>go get github.com/go-pg/migrations  github.com/go-pg/migrations ..\github.com\go-pg\migrations\db.go:27: cannot use pg.Q(tableName) (type orm.FormatAppender) as type types.ValueAppender in return argument:         orm.FormatAppender does not implement types.ValueAppender (missing AppendValue method)
when I'm trying to run examples, it gives the same error:
>go run main.go init  github.com/go-pg/migrations ..\..\..\github.com\go-pg\migrations\db.go:27: cannot use pg.Q(tableName) (type orm.FormatAppender) as type types.ValueAppender in return argument:         orm.FormatAppender does not implement types.ValueAppender (missing AppendValue method)

Can you try to upgrade? I think it was broken for like 15 minutes yesterday.

go get -u github.com/go-pg/migrations

works for me

Yeah, it is fine now. Thx.


UHV: fix Http2FloodMitigationTest.RST_STREAM test

The frame that triggered RST in pre-uhv mode now triggers 400, which breaks the test

@yanavlasov by a wierd stroke of synchronicity i was just tracking this bug when gh closed the ticket
still an issue
https://dev.azure.com/cncf/envoy/_build/results?buildId=141529&view=logs&j=d1f76054-8f79-554b-6f4a-11d6a63b8e00&t=a193292f-96b1-53c3-0505-a923ddcc3f84&l=847


Addition of Hybrid Data Manager SDK

Hi,
The tests require me to set some customer secrets. These are passed as Environment variables for the tests, and as the build for the PR does not set these values, some of the tests are failing. I am attaching the test results from my system with all tests passing. The command I ran was
msbuild build.proj /t:RunTests /p:Scope=SDKs\HybridDataManager
and the result file is below
HybridData.Tests.txt

The swagger spec PR is merged. PR link

@t-prta Please regenerate the code using spec that was merged (generate.ps1)


Use toD for dynamic to in Kamelets

The correct EIP name is toD but we use either to-d or tod in the kamelets.
You can find them via git grep xxxx
They should be renamed to toD

Camel 3.15 has removed tod so we need to migrate this, the older Camel versions work with toD so this should be safe to do


Add "RLAIF-V: Aligning MLLMs through Open-Source AI Feedback for Super GPT-4V Trustworthiness"

RLAIF-V: Aligning MLLMs through Open-Source AI Feedback for Super GPT-4V Trustworthiness
https://arxiv.org/abs/2405.17220

Thanks!


duplicate interface definition for class 'RCTConvert', redefinition of 'RCTLogLevel'

First, great job on the library!
Things were working well on<EMAIL_ADDRESS>but on a fresh install of<EMAIL_ADDRESS>+ RNSVG, the iOS build fails with errors around error: duplicate interface definition for class 'RCTConvert', with error: redefinition of 'RCTLogLevel' and associated items.
Here is a fresh RN0.40.0 repo, https://github.com/jasonrobinson/svgtest , with the latest RNSVG (currently 4.4.1) linked via react-native link react-native-svg.
The relevant build output is build_output.txt. The build succeeds upon downgrading the repo that I linked to<EMAIL_ADDRESS>so this seems to be<EMAIL_ADDRESS>specific. Bumping react to 15.4.1 in package.json does not seem to help.

Just released 4.5.0 which is supported for<EMAIL_ADDRESS>

Thanks @magicismight -- that installs well on a new repo.
However, I think that the larger problem that I had was some slightly outdated dependencies, which led to issues building after running pretty much any react-native link <somepackage>. After updating RNCLI and making sure that package.json is up to date vis-a-vis a clean repo, things compile correctly again. I should have checked that earlier.
So, apologies for bringing up the issue within this repo.
tl;dr for anyone else who has issues using react-native link <somepackage> after a react-native upgrade using any of the convenience tools, check all dependencies, dev dependencies, and global items (e.g. RNCLI) versus a clean repo.


crash when using hopper to insert items to interface from AE2

Describe the bug
The speedy hopper crashes the game when inserting into an interface from AE2
crash-2023-08-24_15.22.35-server.txt
To Reproduce [Optional]
Steps to reproduce the behavior:
place a speedy hopper from essentials inserting into an interface from AE2
make sure the network is powered/online
game crashes

Thus far, I've been unable to reproduce the issue. The following setup works just fine:

(the lower hopper is pointing into a flat ME Interface)
Items inserted into either are successfully transported into an ME Drive when one is attached (not pictured above).
This is likely a problem with something in one of the Ars Nouveau related mods.
The error from the above log is:
java.lang.ClassCastException: class gripe._90.arseng.me.storage.GenericStackSourceStorage cannot be cast to class net.minecraftforge.items.IItemHandler (gripe._90.arseng.me.storage.GenericStackSourceStorage is in module<EMAIL_ADDRESS>of loader 'TRANSFORMER' @24876a7e; net.minecraftforge.items.IItemHandler is in module<EMAIL_ADDRESS>of loader 'TRANSFORMER' @24876a7e)
the mentioned class gripe._90.arseng.me.storage.GenericStackSourceStorage is coming out of Ars Energistique - the Essentials hopper asks the ME Interface block if it has an ItemHandler, the Interface says it does, and then returns an object that isn't an Item Handler; that's on them.
However, as mentioned, I'm unable to reproduce the issue; the above screenshot was taken on a game running the following mods:
MC 1.19.2, Forge 43.2.21

appliedenergistics2-forge-12.9.7.jar
ars_nouveau-1.19.2-3.17.10.jar
arseng-1.0.0-beta.2.jar
curios-forge-1.19.2-<IP_ADDRESS>.jar
essentials-1.19-2.15.5.jar
Patchouli-1.19.2-77.jar

Note that this includes Ars Energistique, but there's no error; it may come from one of the other Ars Nouveau related mods that you have installed.

Thus far, I've been unable to reproduce the issue. The following setup works just fine:
(the lower hopper is pointing into a flat ME Interface)
Items inserted into either are successfully transported into an ME Drive when one is attached (not pictured above).
This is likely a problem with something in one of the Ars Nouveau related mods.
The error from the above log is: java.lang.ClassCastException: class gripe._90.arseng.me.storage.GenericStackSourceStorage cannot be cast to class net.minecraftforge.items.IItemHandler (gripe._90.arseng.me.storage.GenericStackSourceStorage is in module<EMAIL_ADDRESS>of loader 'TRANSFORMER' @24876a7e; net.minecraftforge.items.IItemHandler is in module<EMAIL_ADDRESS>of loader 'TRANSFORMER' @24876a7e)
the mentioned class gripe._90.arseng.me.storage.GenericStackSourceStorage is coming out of Ars Energistique - the Essentials hopper asks the ME Interface block if it has an ItemHandler, the Interface says it does, and then returns an object that isn't an Item Handler; that's on them.
However, as mentioned, I'm unable to reproduce the issue; the above screenshot was taken on a game running the following mods:
MC 1.19.2, Forge 43.2.21

appliedenergistics2-forge-12.9.7.jar
ars_nouveau-1.19.2-3.17.10.jar
arseng-1.0.0-beta.2.jar
curios-forge-1.19.2-<IP_ADDRESS>.jar
essentials-1.19-2.15.5.jar
Patchouli-1.19.2-77.jar

Note that this includes Ars Energistique, but there's no error; it may come from one of the other Ars Nouveau related mods that you have installed.

I have also been unable to replicate it so I suspect it was a freak issue with Ars Energistique. I'll look into it on that end.


Added mote/cspr converters

Added Mote to CSPR and CSPR to mote converters in Conversions.ts

@dylanireland you can run npm run lint locally :) it should fix part of the formatting issues also. cheers!


checkboxes on steps

it'd be extremely convenient if there were checkboxes to tick next to steps so that, while cooking, you could mark things off! 😅

The main reason I dind't implement this is because I liked the clean list look.
I also planned to add a "cook mode" or something like that. Where steps are shown one by one with a next and previous button.
That is a future work now, but I may add the option to show checkboxes in the meantime. Thanks for the feedback!

to be honest, personally i'm not organised as a chef to do things in the exact order listed, so a 'cook mode' might be problematic for me
but i understanding liking the minimalism!


feat(new): Cost Management scheduled actions for subscriptions

Description

Adds a module for Cost Management scheduled actions for subscription scope.
Closes #266
Adding a new module

[x] A proposal has been submitted and approved.
[x] I have included "Closes #{module_proposal_issue_number}" in the PR description.
[x] I have run brm validate locally to verify the module files.
[x] I have run deployment tests locally to ensure the module is deployable.

@flanakin You may need to bump the Bicep CLI version on your machine to fix the CI error.


Stop test as soon as expectation is verified

What type of PR is this:
/kind bug
/area testing
What does this PR do / why we need it:
Which issue(s) this PR fixes:
Fixes #6890
PR acceptance criteria:

[ ] Unit test

[ ] Integration test

[ ] Documentation

How to test changes / Special notes to the reviewer:

[FAILED] Timed out after 420.000s.
  Expected
      <string>:   __
       /  \__     Developing using the "hmyitr" Devfile
       \__/  \    Namespace: cmd-dev-test468jix
       /  \__/    odo version: v3.11.0
       \__/

      â†ª Running on the cluster in Dev mode
       â€¢  Waiting for Kubernetes resources  ...
       âš   Pod is Pending
       âš   0/3 nodes are available: 3 pod has unbound immediate PersistentVolumeClaims. preemption: 0/3 nodes are available: 3 Preemption is not helpful for scheduling.
       âš   0/3 nodes are available: 3 pod has unbound immediate PersistentVolumeClaims. preemption: 0/3 nodes are available: 3 Preemption is not helpful for scheduling.
       âš   0/3 nodes are available: 3 pod has unbound immediate PersistentVolumeClaims. preemption: 0/3 nodes are available: 3 Preemption is not helpful for scheduling.
       âš   AttachVolume.Attach failed for volume "pvc-749a3dd3-69d6-4702-b08d-cffc6d2d5122" : timed out waiting for external-attacher of vpc.block.csi.ibm.io CSI driver to attach volume r010-c4b78560-c7c1-4002-9923-297cdef71201
       âš   Unable to attach or mount volumes: unmounted volumes=[odo-projects], unattached volumes=[odo-shared-data kube-api-access-d622r odo-projects]: timed out waiting for the condition
       âš   AttachVolume.Attach failed for volume "pvc-749a3dd3-69d6-4702-b08d-cffc6d2d5122" : timed out waiting for external-attacher of vpc.block.csi.ibm.io CSI driver to attach volume r010-c4b78560-c7c1-4002-9923-297cdef71201
       âš   Unable to attach or mount volumes: unmounted volumes=[odo-projects], unattached volumes=[odo-projects odo-shared-data kube-api-access-d622r]: timed out waiting for the condition
       âš   AttachVolume.Attach failed for volume "pvc-749a3dd3-69d6-4702-b08d-cffc6d2d5122" : timed out waiting for external-attacher of vpc.block.csi.ibm.io CSI driver to attach volume r010-c4b78560-c7c1-4002-9923-297cdef71201
       âš   Unable to attach or mount volumes: unmounted volumes=[odo-projects], unattached volumes=[odo-shared-data kube-api-access-d622r odo-projects]: timed out waiting for the condition

  to contain substring
      <string>: [Ctrl+c] - Exit

Issues with volume mounting on OpenShift clusters - should not be related to the tests here, but this is something we need to investigate.
/override OpenShift-Integration-tests/OpenShift-Integration-tests
/override windows-integration-test/Windows-test


Add a default robots.txt

It was one of the recommendations here https://sitechecker.pro/app/main/project/2819500/audit/summary?utm_campaign=redirecttest

we could add a humans.txt too :)
https://profiles.eco/humans.txt


Questions about PGDAttack

Hi! Thanks for this great repo.
I have some questions about the implementation of PGDAttack.

The learning rate of PGDAttack. https://github.com/EdisonLeeeee/GreatX/blob/49675e30ed38b2518f7a1b85b667de5f4a0c9a7c/greatx/attack/untargeted/pgd_attack.py#L42 In the original paper of PGDAttack and implementation of DeepRobust, the learning rate here seems to be
lr = base_lr / math.sqrt(epoch + 1). I notice that the default value of "base_lr" is kept the same, so the final "lr" would be very different as num_budget is often large. Will this difference matter a lot?
The choice of learning rate in PGDAttack.
As suggested by the authors, PGDAttack prefers different base_lr for different loss_type. I think it would be better if this difference is included.
In PGD Example, the same attacker is applied in both poison and evasion settings. In the original implementation, there is a poison version of PGDAttack specific for the poison setting (named as MinMax in the DeepRobust repo). Will this version be included as well?

By the way, it is great to see that the repo is more PyG styled. Does that mean we can attack more PyG models as surrogate or victim models? For example, we can attack GAT and APPNP using PGDAttack as long as they are written in a PyG message-passing framework through edge_index.

Hi @Leirunlin. Thank you for your interest in this repo.

Thank you for pointing out that. I followed the implementation from here and adjusted the code from DeepRobust. In my experiments, multiplying lr with num_budgets improves its attack performance and is even better than that of DeepRobust. So I just kept it as a better solution.
Agreed. PGDAttack is sensitive to lr and one should carefully tune base_lr to obtain better performance. I can provide some empirical guidance if this is needed.
AFAIK,  MinMax is less used in literature as a comparison method. I think current implementation of PGDAttack is sufficient, which is also able to perform poisoning attacks by passing training set nodes as victim_nodes. Nevertheless, I can integrate MinMax into this repo as well.
Yes, this repo is designed to be completely compatible with PyG in terms of data, layers, and models. You can definitely use any PyG models as surrogate models to perform attacks as long as they are implemented in a form that accepts x, edge_index, edge_weight  as input. For now, most attacks except Metattack and Nettack supports other PyG models other than GCN.

Hi. Thanks for your detailed answer.
In my experiments, multiplying lr with num_budgets also improves the performance of CE loss, especially in the poison setting, but is relatively less useful for CW loss. Unfortunately, I didn't find literature discussing this phenomenon.  It would be helpful if any advice about the choice of base_lr is provided.
Again, thanks for your efforts on this repo. I'm really looking forward to the released version.

I'll dig into that and report back. The first released version would be coming soon. BTW, the master branch is always available :D


Added cors support behavior

Solves #49

Just one question: Is this by any chance code from Stackoverflow? If not, I agree adding CORS.

Just one question: Is this by any chance code from Stackoverflow? If not, I agree adding CORS.

Unfortunately this code comes in Parts from Stackoverflow

Unfortunately this code comes in Parts from Stackoverflow

Because Stackoverflow failed to go through with licensing their snippets under MIT license, all of that is still CC-BY-SA and incompatible with our Apache License.

I reduced it to pure CORS implementation, that should not violate any Copyright, as it is an almost empty implementation that only sets CORS headers and should fall below threshold of originality.


Development

Shellchecked the script against SC2006 & SC2086, I keep on ...

Great job!! Well done.


[Map] MH-DAWN2

Another odd one - looks like it is unfinished.  It is a map from a six part single player campaign (by Chris Burgess - called One Day in the Life Of ...) - it is playable in that one can walk around it and it is nicely designed.  There are four playerstarts, an automag, a number of rabbits and one Nali - no monsters, no MonsterEnd.  There is one creaturefactory (set to spawn one UnrealShare.Skaarj, which is an abstract class) and one spawnpoint.  There is no gametype in the LevelInfo - just the map name.
So not a MH map unless one counts the potential to shoot a few (harmless) rabbits and birds - as I say, it looks like an uncompleted, or perhaps even a not begun, 'conversion'.

URL: https://unrealarchive.org/maps/unreal-tournament/monster-hunt/D/mh-dawn2_deb8aa56.html
Hash: deb8aa56ec4339f2fd4b6efca7a9571a391339ef
Current name: MH-DAWN2

I'm sending it to Tests and Demos, then.


adding a viapoint to route leads sometimes to a duration way too high, while the distance is correct

first of all i cannot reproduce this problem on http://map.project-osrm.org , only with my local installation, which is based on your current development branch.
The route produced by
/viaroute&start=49.464478210352,11.149670375707&dest=49.437419461439,11.765135420685&z=13&output=json&jsonp=showResultsRoute&geomformat=cmp&instructions=true
is reasonable, distance and duration are correct. (53km, 36min). After adding a via point, the request
/viaroute&start=49.464478210352,11.149670375707&dest=49.437419461439,11.765135420685&via=49.40734,11.76091&z=13&output=json&jsonp=showResultsRoute&geomformat=cmp&instructions=true
produces also a reasonable route. Distance is again correct (57.5km). But now the duration is 1h 10min, which is abolutly wrong. If i calculate two seperate routes start->via and via->end, the sums are good: (57.6km, 39min).
I tried to track down the problem by comparing SearchEngine::ComputeRoute and SearchEngine::ComputeViaRoute. I have to admit that i do not really understand that code up to now. But the following lines came to my attention:
In ComputeViaRoute:
_forwardHeap->Insert(phantomNodePair.startPhantom.edgeBasedNode, distance1-phantomNodePair.startPhantom.weight1, phantomNodePair.startPhantom.edgeBasedNode);

In ComputeRoute:
_forwardHeap->Insert(phantomNodes.startPhantom.edgeBasedNode, -phantomNodes.startPhantom.weight1, phantomNodes.startPhantom.edgeBasedNode);

There are 4 similar lines in ComputeViaRoute. The term "distance1-phantomNodePair.startPhantom.weight1" is not really clear to me (which may be because i don't understand the whole thing... ;-) ). So i changed the code that it looks like ComputeRoute in this detail (changing 4 lines!). Et voilà: The route is correct, and also distance and duration: 57.6km, 39min
One other thing i noticed: In ComputeViaRoute the variables 'middle1' and 'middle2' are initialized with UINT_MAX outside of the foreach loop. If i understand correctly, the value UINT_MAX should be a signal for failure (?) of SearchEngine::_RoutingStep. Shouldn't be they initialized within that loop?

good find! i'm not the maintainer of osrm but you might consider adding a pull request. preferably one commit rebased on latest upstream master. that will make it easier for the maintainer to review and accept your fix :-)

Hi,

first of all i cannot reproduce this problem on http://map.project-osrm.org , only with my local installation, which is based on your current development branch.

The mahor difference is the redirected http request through an Apaches forward instruction. It filters some very malformed requests which may cause trouble. Not sure though if this is really related here.
I am on trip through Asia and will work on the bug once I return (end of next week).

The route produced by
/viaroute&start=49.464478210352,11.149670375707&dest=49.437419461439,11.765135420685&z=13&output=json&jsonp=showResultsRoute&geomformat=cmp&instructions=true
is reasonable, distance and duration are correct. (53km, 36min). After adding a via point, the request
/viaroute&start=49.464478210352,11.149670375707&dest=49.437419461439,11.765135420685&via=49.40734,11.76091&z=13&output=json&jsonp=showResultsRoute&geomformat=cmp&instructions=true
produces also a reasonable route. Distance is again correct (57.5km). But now the duration is 1h 10min, which is abolutly wrong. If i calculate two seperate routes start->via and via->end, the sums are good: (57.6km, 39min).
I tried to track down the problem by comparing SearchEngine::ComputeRoute and SearchEngine::ComputeViaRoute. I have to admit that i do not really understand that code up to now. But the following lines came to my attention:
In ComputeViaRoute:
_forwardHeap->Insert(phantomNodePair.startPhantom.edgeBasedNode, distance1-phantomNodePair.startPhantom.weight1, phantomNodePair.startPhantom.edgeBasedNode);
In ComputeRoute:
_forwardHeap->Insert(phantomNodes.startPhantom.edgeBasedNode, -phantomNodes.startPhantom.weight1, phantomNodes.startPhantom.edgeBasedNode);
There are 4 similar lines in ComputeViaRoute. The term "distance1-phantomNodePair.startPhantom.weight1" is not really clear to me (which may be because i don't understand the whole thing... ;-) ). So i changed the code that it looks like ComputeRoute in this detail (changing 4 lines!). Et voilà: The route is correct, and also distance and duration: 57.6km, 39min
One other thing i noticed: In ComputeViaRoute the variables 'middle1' and 'middle2' are initialized with UINT_MAX outside of the foreach loop. If i understand correctly, the value UINT_MAX should be a signal for failure (?) of SearchEngine::_RoutingStep. Shouldn't be they initialized within that loop?

Reply to this email directly or view it on GitHub:
https://github.com/DennisOSRM/Project-OSRM/issues/81

The major difference

What about displaying the version id or timestamp of the backend code? Also a timestamp of the used planet file would be very interesting

Thanks, will have a look at this one.
Am 19.01.2012 um 12:49 schrieb DrVanScott:

maybe a fix: https://github.com/DennisOSRM/Project-OSRM/pull/82

Reply to this email directly or view it on GitHub:
https://github.com/DennisOSRM/Project-OSRM/issues/81#issuecomment-3561526

I have identified the reason of this issue and it's a quite minor one.

seems to work correctly, although i already pulled https://github.com/DennisOSRM/Project-OSRM/pull/82. i didn't get any git conflicts when merging


How to cache docker image

Hi! I find your action really useful, but the build time lasts quite long since it downloads the image on each build. Is there a way to cache the image between builds?
Thanks!

downloaded images are cached (somewhat) but here the problem is that the image is built anew each run. One way to fix this is build and upload the image to some registry, like Docker Hub, then update the image field in the action.yml.
For reference: https://docs.github.com/en/actions/creating-actions/metadata-syntax-for-github-actions#example-using-public-docker-registry-container

also @Krizzu, I believe you don't have to pass inputs explicitly via args, they get passed down to your code anyway

To speed up this action, one can use action caching. Another way would be to have this docker image uploaded in Docker Hub.
@nyaaao what args are you referring to?

@Krizzu I was referring to these https://github.com/Krizzu/eslint-check-action/blob/master/action.yml#L23-L27


Blog App: validations and model specs

In this PR, I have:

Added the following validations:

For the User model:

Name must not be blank.
PostsCounter must be an integer greater than or equal to zero.

For the Post model:

Title must not be blank.
Title must not exceed 250 characters.
CommentsCounter must be an integer greater than or equal to zero.
LikesCounter must be an integer greater than or equal to zero.

Added unit specs for all of your models' methods and validations.

Thanks @KayLemba


Add VRC.Core.ApiWorld.Tags Hook to prevent mods from checking world tags manually.

Also added ReMod CE to the tested list and removed your Pragma warning. :trollface:

1: make your git / editor config respect CR/CRLF/LF
2: reset the build number after incrementing the minor


shared storage is not currently available

Getting NPE on Vivo devices

Vivo Y53
Vivo 1724
Vivo 1803

Runs with Android versions 6.0.1 and 8.1.0
#Stacktrace

Fatal Exception: java.lang.NullPointerException: shared storage is not currently available
at java.util.Objects.requireNonNull(Objects.java:109)
at com.coolerfall.download.Preconditions.checkNotNull(Preconditions.java)
at com.coolerfall.download.DownloadManager.(DownloadManager.java)
at com.coolerfall.download.DownloadManager$Builder.build(DownloadManager.java)
at com...getConfigValue(Utils.java)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(BaseContinuationImpl.java)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.java)
at kotlinx.coroutines.internal.LimitedDispatcher.run(LimitedDispatcher.java)
at kotlinx.coroutines.scheduling.TaskImpl.run(TaskImpl.java)
at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.java)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.java)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.java)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.java)

Sorry for issuing, The fault is our end.

Check storage first yourself.

Check storage first yourself.

Checked and working fine, Thanks

DownloadManager uses context.getExternalFilesDir to get download directory. If this is not available, it means you have no permission to use it.


fatal error: concurrent map writes

fatal error: concurrent map writes

goroutine 3765 [running]:
runtime.throw(0xcf6ade, 0x15)
        /usr/local/go/src/runtime/panic.go:596 +0x95 fp=0xc42098f828 sp=0xc42098f808
runtime.mapassign(0xc03600, 0xc4208f6030, 0xc42098f8f0, 0xba2b40)
        /usr/local/go/src/runtime/hashmap.go:499 +0x667 fp=0xc42098f8c8 sp=0xc42098f828
github.com/rs/xlog.(*logger).SetField(0xc4208f6000, 0xceccc8, 0xa, 0xba2b40, 0xc4202aa600)
        /go/src/github.com/rs/xlog/xlog.go:234 +0x66 fp=0xc42098f910 sp=0xc42098f8c8

we should either protect the logger with a mutex or use sync.Map with Go 1.9.

or provide a recommendation for best usage practice:
logger.Infof("Format ...", arg1, arg2,...argN, xlog.F{"key": "value",..."keyM": "valueM"})

@rs could you confirm that it's a bug that should be fixed and not by design (for performance reasons)?

@rs we ended up with zerolog, this problem went away when we did that.

Yeah, that could be a solution, thanks. But what about that issue? Is that something that should be fixed? If not it would be nice to document that behavior.
Unfortunately can't do it as it takes too much effort, but thanks for the recommendation.

Generally, when something is not documented as thread safe, it is caller’s job to ensure safety.


Fixed InCorrect Month Progression Bug

Problem Statement
I am working on this issue: KalendarPagingSource Class. I think the problem is with the KalendarPagingSource Class. In this class, we filter the kalendar items.
Code Snippets
Here are the code snippets that show the difference between the original code and the modified code:
Original Code
This is the original code that filters the kalendar items:
val kalendarItems = kalendarRepository.generateDates(page)
                .filter { date ->
                    date.year >= today.year && date.month.value >= today.monthNumber
                }

Modified Code
This is the modified code that filters the kalendar items:
val kalendarItems = kalendarRepository.generateDates(page).filter { date ->
                if (date.year == today.year) {
                    date.month.value >= today.monthNumber
                } else {
                    date.year > today.year
                }

Explanation
The reason why I changed the code is because the original code filters out some valid dates that should be displayed in the kalendar. For example, if today is August 19th, 2023, then the original code will only allow dates whose year is 2023 and later and whose month is August or later. This means that dates like January 1st, 2024, or February 29th, 2024, will not be shown in the calendar.
This code fixes this issue by allowing months which are before the current month if the year is greater than the current one else if the year is the current year, we only allow months which are after the current month and the current month. So now the months from January to July will not be filtered out and the next year will start with January.
Final Result

I you find any issues with this code please inform me. I will try to fix them. Any improvements, feedbacks, reviews are appreciated 😊.

Hi Himanshu,
I submitted a pull request on the Kalendar project and was wondering about its status. If there are any issues or improvements needed, please let me know.
AndroidJunior9

Thank you


fix entrypoint initTracer that broke in merge

Coverage remained the same at 93.713% when pulling 304fe44e162cc5cafcd0cccd7714aaafefb3cddf on fix_entrypoint_alone into eb1cc8937d1219aa6f1568f2b46ced9370555fc1 on master.


Add type descriptions to completions and hovers, support method hovers.

Closes #668
Closes #2074

Add type property descriptions to hovers and completions
Changes to type system & binding so that object properties & methods are dynamically resolved and not bound upfront.

NOTE: This PR does not include an implementation for find references on object property symbols.

I tried getting a hover for a discriminator property and didn't get anything:

But it worked for a regular property:

Same problem in a non top-level discriminator property as well:

It may be difficult to produce a description for that property depending on how the swagger is structured for that type, but we should show something similar to what the completion text looks like for the same property.

Btw, I'm assuming that find refs for properties is out of scope of this PR?

Btw, I'm assuming that find refs for properties is out of scope of this PR?

Yes. I've added that as a note to the description. This implementation simply generates a new PropertySymbol when requested with no caching. Find refs would need a cache layer, plus means answering some tough questions about what we consider equivalent when comparing properties.

I tried getting a hover for a discriminator property and didn't get anything:

Good find! I've fixed the hover and added a test for it.
As you mention, showing a description is a little tricky. I think we have all the information we need in swagger, but we currently store descriptions in the individual property fields - meaning we only have descriptions for the sub class discriminator properties and not the base class discriminator property. I'll add an issue to the types repo for this.

Seems like #1571 is unblocked, I’ll bring my branch up2date sometime next week.

Seems like #1571 is unblocked, I’ll bring my branch up2date sometime next week.

I was actually partway through merging main into your branch; I'll send you a PR if I get there, so you can choose whether or not you want to accept it.

Seems like #1571 is unblocked, I’ll bring my branch up2date sometime next week.

I was actually partway through merging main into your branch; I'll send you a PR if I get there, so you can choose whether or not you want to accept it.

awesome! thanks :)

awesome! thanks :)

@miqm I pushed accidentally rather than submitting a PR. Tests are passing though, which is a good sign!


Issue 104

Thank you, I'll look into it on the next week hopefully.

I had to change something, in particular there was a problem in the jsondoc template when displayed in the ui (see screenshot). Again, many thanks.


Make typealiases accessible for types and in global scope

With typealiases becoming more stable we can make them accessible in templates. This will allow some nice tricks like using typealias value instead of annotations to generate typed things.
Type should provide typealiases mapped to their names viatypealias property and array of typealiases for iteration via typealiases property. The same for global typealiases.

@ilyapuchka could you elaborate on your idea to have typealiases mapped to their names via typealias property?
class Foo {}
typealias Foo1 = Foo
typealias Foo2 = Foo

type.typealias -> "Foo1Foo2"?


Size of empty array is not known statically?

Input
→ View on sorbet.run
# typed: true
class A
  extend T::Sig

  sig {params(x: Integer).void}
  def self.foo(*x)
    puts x.to_s
  end
end

def main
  arr = [1, 2, 3]
  A.foo(*arr) # Ok

  arr = []
  A.foo(*arr) # Seems like we can infer this size too?
end

Observed output
editor.rb:16: Splats are only supported where the size of the array is known statically https://srb.help/7019
    16 |  A.foo(*arr) # Seems like we can infer this size too?
          ^^^^^^^^^^^^
Errors: 1

Expected behavior
While empty, the size is known statically so it should not error.

No more error 🎉

(Fixed in #3836)


We should enforce the order in which retries can happen.

Jobs are not guaranteed to be commutative. That means you could imagine a scenario like this:
3 (non commutative) jobs fail, and appear on the failed queue. Imagine for example, switching a boolean value.
That means on the retry list we have:
1. A job which wants to go from true -> false
2. A job which wants to go from false -> true
3. A job which wants to go from true -> false
Now imagine a dev retires the job, as far as I can see there's nothing guaranteeing the jobs run in the correct order - so 3 could finish, then 1 could finish, then 2 could finish.
That would leave the system in an incorrect state.

@Adzz Interesting question, and you are correct that Rihanna makes no guarantees about the order that jobs will be executed in. However, this is a problem inherent to all distributed job queues and is unsolvable for any level of concurrency greater than 1.
Let's look at an example:
We enqueue two jobs, Job A and Job B. The dispatcher reads these jobs sequentially and distributes them to two different workers. They are executed like this:
Job A starts
|
|         Job B starts
|            |
|            |
|            |
|            |
|         Job B ends
|
|
Job A ends
Even though Job A was distributed to a worker first, there is no guarantee that it would FINISH before Job B. What if worker A is slower?
The only way to guarantee ordering in a distributed system is to create a worker lock such that only one job can ever be executing at the same time (serializable jobs):
Job A starts
|
|
|
Job A ends
Job B starts
|
|
Job B ends
But this means you essentially don't have any concurrency! So there is no point in a distributed job queue at all for this example. The only solution for a concurrent system is to write your jobs in such a way that ordering does not matter.
Does that make sense?

Closing as not mathematically possible.


Consider text-overflow: ellipsis for long values

We could use style text-overflow: ellipsis and then remove the style on click to reveal the full value. This has a few advantages over the collapse-long-text directive:

Copying the text even if elided will copy the complete value, without needing to expand.
The browser will show as much text as it can rather than eliding at some arbitrary character count.
The full text will show in a tooltip if the user hovers over it.

/cc @liggitt

Fixed by #21


Focus gets reset when exitting "Connect" dialog via "more connect options"

Bug Description
GOOD: When you use the "Send to micro:bit" button and then cancel the "Connect cable" dialog, the focus is correctly put back on the "Send to micro:bit" button. Hurrah.
BAD: If you access the same dialog from the "more connect options" button -> "Connect" workflow, focus is reset to the top left of the screen and if you are navigating with a screen reader or keyboard control, then it is a pain to get back to the project actions.
How To Reproduce
Steps to reproduce the behavior:

There is no micro:bit connected
Click on the 'more actions' menu button
Click on "Connect"

Exit the dialog either by pressing escape, clicking on the "X" or "Cancel" or using keyboard controls to select "X" or "Cancel"
Press tab to observe focus

Expected behavior
Focus should be put back to the 'more actions' menu button or at least the project actions region
Environment
Windows 10 / Chrome / live site

Thanks @kmcnaught.
This seems to be generally true of focus after modals triggered by this kind of menu item.
It applies to the About dialog from the Help and the Language and Settings dialogs from the settings cog menu.
We'll have to do something explicit as the previously focussed element is no longer visible once a menu item has been selected. It should probably be fixed by passing a ref to the triggering button to the dialog opening code. I think the dialog component itself already has a finalFocusRef prop but we might need to pass it through dialog helper code.


Implement JoltField Arithmetic by Reference

Fix #380

I don't think this actually solves the issue, the goal is to avoid e.g. dereferencing the coeff here

Hey @sragss @moodlezoup , this one is ready for a look.
The test failure looks to be the pesky toolchain download error :(
--- STDOUT:              jolt-core jolt::vm::rv32i_vm::tests::fib_e2e_hyperkzg ---
running 1 test
Attempt 1/5
Downloading toolchain
test jolt::vm::rv32i_vm::tests::fib_e2e_hyperkzg ... FAILED
failures:
failures:
    jolt::vm::rv32i_vm::tests::fib_e2e_hyperkzg
test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 153 filtered out; finished in 3.57s

--- STDERR:              jolt-core jolt::vm::rv32i_vm::tests::fib_e2e_hyperkzg ---
thread 'jolt::vm::rv32i_vm::tests::fib_e2e_hyperkzg' panicked at jolt-core/src/host/mod.rs:100:33:
called `Result::unwrap()` on an `Err` value:
gzip: stdin: unexpected end of file
tar: Unexpected EOF in archive
tar: Unexpected EOF in archive
tar: Error is not recoverable: exiting now
Location:
    jolt-core/src/host/toolchain.rs:93:9
stack backtrace:
   0: rust_begin_unwind
   1: core::panicking::panic_fmt
   2: core::result::unwrap_failed
   3: jolt_core::host::Program::build
   4: jolt_core::host::Program::decode
   5: jolt_core::jolt::vm::rv32i_vm::tests::fib_e2e_mock
   6: core::ops::function::FnOnce::call_once
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.


Add OpenAI sync embedding instrumentation

This PR adds instrumentation for OpenAI sync embeddings.

Codecov Report

:exclamation: No coverage uploaded for pull request base (develop-openai-instrumentation@2834663). Click here to learn what that means.
The diff coverage is n/a.

@@                        Coverage Diff                        @@
##             develop-openai-instrumentation     #938   +/-   ##
=================================================================
  Coverage                                  ?   81.78%
=================================================================
  Files                                     ?      191
  Lines                                     ?    19627
  Branches                                  ?     3408
=================================================================
  Hits                                      ?    16052
  Misses                                    ?     2591
  Partials                                  ?      984

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


How to add external scripts (from CDN)

I know this might seem like a silly question, but I can't figure out where I inject stuff into the HEAD tag.
Some scripts require that to work. How do I inject a javascript link from a CDN to the HEAD tag?

Hi, some CDN files are being loaded in src/helpers/Html.js already.  I think this is the script you are looking for.

Thanks! This is exactly it!


no-unresolved is not aware of exports definition in package.json

From this announcement

Package entry points and the package.json “exports” field
There are now two fields that can define entry points for a package: “main” and“exports”. The “main” field is supported in all versions of Node.js, but its capabilities are limited: it only defines the main entry point of the package. A new package.json field “exports” can also define the main entry point, along with subpaths. It also provides encapsulation, where only the paths explicitly defined in “exports” are available for importing. “exports” applies to both CommonJS and ES module packages, whether used via require or import.

Might need to be fix in resolve package..

Indeed, that’s where it needs to be fixed.
However, for back compact, you should have a file at the location the exports key would otherwise resolve to anyways - so even when it’s fixed in resolve, you’d still want it fixed now.

When to fix?

Will this be resolved any time soon? We're going to have to yank no-unresolved from our Google code samples because it can no longer handle our SDKs.

@inlined why would your Google SDKs be using exports, without main, in a way that's not backwards-compatible??

We are using main. We also use exports for submodule paths so we can omit the lib folder generated by TypeScript.
For example, ./lib/v2/providers/https.js is exported at ./v2/https. See github.com/firebase/firebase-functions for more info.

Right - but that's not backwards-compatible to pre-exports node. However, if you created an actual ./v2/https.js file that re-exported that provider, then not only would your package be backwards-compatible, but you wouldn't be blocked on resolve getting exports support.

We control our execution environment and do not need to be backwards compatible to versions that don't support exports.

@inlined i'm not "of the opinion that exports should not use renaming features", i'm of the opinion that you have a really simple workaround while you wait.
None of my "opinions" are delaying exports support - the work is difficult and nobody else is doing it, and I have limited time. It will be done eventually.

@inlined if google wants to help make it happen faster, please feel free to visit https://github.com/browserify/resolve?sponsor=1

Hi all, FYI I am successfully using this tiny ESLint import resolver to support ESM modules imports via package.json exports map:
https://gist.github.com/danielweck/cd63af8e9a8b3492abacc312af9f28fd
Duplicate issue? https://github.com/import-js/eslint-plugin-import/issues/1868

I created a simple resolver that works thanks to enhanced-resolve:
resolver.js
'use strict';

const path = require('path');
const { builtinModules } = require('module');
const enhancedResolve = require('enhanced-resolve');

const builtins = new Set(builtinModules);

function resolve(source, file, config) {
  if (builtins.has(source)) {
    return { found: true, path: null };
  }

  try {
    const resolver = config ? enhancedResolve.create.sync(config) : enhancedResolve.sync;
    const result = resolver(path.dirname(file), source);

    return { found: true, path: result };
  } catch (e) {
    return { found: false };
  }
};

module.exports = {
  interfaceVersion: 2,
  resolve
};

Usage (eslint.config.js):
// without config
module.exports = {
  // ...
  settings: {
    'import/resolver': path.resolve(__dirname, './resolver')
  },
  // ...
};

// with `enhanced-resolve` config
module.exports = {
  // ...
  settings: {
    'import/resolver': {
      [path.resolve(__dirname, './resolver')]: {
        extensions: ['.js', '.ts']
      }
    }
  },
  // ...
};

Any updates?

@bertho-zero it looks similar to https://gist.github.com/danielweck/cd63af8e9a8b3492abacc312af9f28fd, can you create a npm package from it?

I just published a resolver package that solves this issue using resolve.exports: https://www.npmjs.com/package/eslint-import-resolver-exports
It's currently beta but seems to work for most of my projects. Feedback appreciated.

It's currently beta but seems to work for most of my projects. Feedback appreciated.

do you have examples that we could look at? I don't understand how to configure the resolver to get the same behavior as the one from the webpack resolver.

do you have examples that we could look at?

Currently what's in the readme is all I have. I think it's best to use this in addition to other resolvers, as a fallback as it only supports main, module, exports and nothing else. The readme shows how to use it with TypeScript resolver for example. You should probably keep using Webpack's resolver too.
Check the resolve.exports docs for configuration options.

You can use https://github.com/import-js/eslint-import-resolver-typescript which supports exports in package.json instead.

That should only be a suggestion for TS users; the real solution here is for resolve to add support for exports.

That should only be a suggestion for TS users; the real solution here is for resolve to add support for exports.

Of course, I didn't close this issue. 🤣

I just published a resolver package that solves this issue using resolve.exports: https://www.npmjs.com/package/eslint-import-resolver-exports
It's currently beta but seems to work for most of my projects. Feedback appreciated.

Thank you @cyco130, that solved it for me.

I'm proposing to fix this by writing a new resolver. I've been experimenting recently (with great success, I feel) in making code sync/async agnostic by making aggressive use of the strategy pattern, which allows you to write functionally pure code which makes requests to and receives responses from a stateful core. Because that request/response mechanism is yield, the core is able to complete the request synchronously, or it may leave the generator suspended while it waits for async lookups to complete.
Would anyone be interested in collaborating me on a project like that if it would fix this issue once and for all?

Fixing resolve would be of much larger impact than a new resolver.

Hi @conartist6, I already have a working resolver I shared in my comment. I gladly accept contributions :)

Why not use createRequire(importer).resolve(importee,{paths:[]}) directly? In order to support configuring extensions, try resolve importee.[ext] and importee/index.[ext] again.

@nia072011 that wouldn't work in older node versions, and still wouldn't support ESM. It's not a terrible workaround tho pending the resolve implementation.

Thanks @cyco130 et al.
Just so I have not misunderstood anything, I am getting an ESLint error when importing a TS module B into a JS file A, when B only uses exports in package.json. If I convert A into TypeScript, the error disappears (I am guessing that is because eslint-import-resolver-typescript supports the exports field).
To be clear, this works:

Importing a JS module into a JS file
Importing a JS module into a TS file
Importing a TS module into a TS file

But, this does not work:

Importing a TS module into a JS file

Is that still the issue the rest of you see as well?

@magnusriga this can be easily solved by making sure that the actual path to the file is present in the LHS of exports, so that pre-exports node (and resolve, and thus this plugin) can find it also;.

@ljharb Thank you for the reply. Do you mean I do not need the new eslint-import-resolver-exports package?
This is my exports field in package.json (I output js to .dist and types to ./types):

With the above, all imports work except when I try to import a TS module into a JS file (I am using `eslint-import-resolver-typescript).

in that case you only have native ESM, which we don’t support yet.

I am not as knowledgable here, but what you are saying is that when I am using import { B } from 'acme/ui' I am using ESM style imports, and not CommonJS (require). And currently, a workaround (like the new eslint-import-resolver-exports package) is needed to allow TS files to import JS files when the latter is exported with exports (like in my screen shot above).
Is that correct? Thank you.

The import style is irrelevant; the issue is what format the thing you're importing is using.

@ljharb Thanks for the clarification. Do you think eslint-plugin-import will support importing ESM components in the near future, or should we expect to rely on alternatives for the next few months?

This plugin can't support exports, nor native ESM, until resolve does; I have no timeline for when resolve will support that, but I continue to hope it's "soon".

What's it been so far,  three or four years?

Yup. Doing unpaid volunteer work doesn't create a lot of free time.

I'm just gonna build it,  unless anyone objects. Now is a good moment for
me.

You've always been welcome to, but unless it's in the resolve package it won't have the same benefit, I'm afraid.

Could you clarify what you mean?
I think of this as a case that demands competive compatibility, but so long
as I'm doing a full rewrite I will have little desire to release my work
under their name (even if it were possible).

it is, as I’m the sole maintainer of resolve, but a full rewrite isn’t needed anyways.

I'd rather not build it in a way that all the important logic is duplicated between the sync and async pathways. My aim would be define the resolution algorithm once and only once, and generator functions are the means to do it.

There aren't any versions of node that support exports but don't support generators, right? In other words, old versions of node would continue to use your package.
My primary concern would be ensuring that if users who are coding the most modern and correct style have readily available tools that can help them.

ESLlint 4.19.1, now six years old, requires node >4, which already supported ES6. Old code that actually resolves modules won't know about exports anyway, so as I say for those users there would be no need to update this package at all

The resolution needs to be done regardless of the current node version to be usable here.

I'm just trying to figure out where the requirement for the resolver to be implemented in es3 is coming from

From the node versions it needs to support. Generators are garbage anyways and should be avoided, imo.

Could you clarify: why do really old node versions need to be able to resolve exports though?

The use cases for resolve are far more plentiful than for eslint. resolve needs to resolve, in any node version, a path as if it would be resolved in any other node version. A pre-exports node may want to emulate “exports”. A post-exports node may want to emulate pre-exports. A modern node may simply want to know what a pre-exports node user would see.

I think the sane solution here is to don't worry at all about any unmaintained Node.js version, it's said, don't provide support for anything older than Node.js v18.

I really don't buy that the only way to have good compatibility is if there is a single implementation of the algorithm. Tons of projects are already using enhanced-resolve anyway, and putting a new algorithm out in ESLint will be an amazing way to safely get feedback on whether there is behavioral parity.

@piranna ”sane” isn’t an appropriate word to be using in this context; and almost all of my packages support down to node 0.4, and will continue to do so for the foreseeable future. Platform support has no correlation to what a package should support.

@conartist6 thats fine, your agreement isn’t required.

I think this is great because now we're unblocked. It's clear from this conversation that my beliefs about the problem are different enough from yours that I should build a new package, and that it will be clearly differentiated in the marketplace.

Everyone who just wants to use the new stuff can stop bugging you, which is a win for you as well.

Go for it. As you said tho, there’s already packages that do this, so i don’t think there’s much value in yet another one; the value is in resolve itself doing it.

I would agree that all that was off-topic if this were a conversation on the resolve package, but as this is eslint-plugin-import parts of that conversation seem quite relevant.
To recap the now-hidden conversation:

@ljharb  is the sole maintainer of the resolve package
@ljharb's mission for the resolve package is to support node >= 0.4.0, meaning he can only work in es3
ESLint has required node >= 4.0.0 for the last six years (at least)
resolve favors speed and compatibility over readability and correctness

I believe that in sum this means that eslint-plugin-import should seek out a resolve implementation which is better aligned with its needs and the needs of its users.

It won’t; using resolve - the most common implementation - is what is most aligned with it and its users needs.

I would appreciate if you would allow my condensed argument to stand, for the record. Please?

Your summary would be fine; your conclusion would only distract.

 That was rude and inappropriate. We can compete with and disagree with other people and still respect them.

@conartist6 no comments were deleted afaict, so I’m not sure what you’re referring to.

Not deleted by you, but it was emailed to anyone who subscribes to this thread.

ah, yes, i found it in my email :-) some people have nothing better to do, i guess.

I feel that you have abused your position as a moderator to protect your image in the face of reasoned dissent, so I can't say I'm that thrilled with you at the moment.

Is there an ombudsman or another moderator who could assist in untangling this?

I'm not wedded to any particular outcome, but it's unacceptable to me that all discussion on the topic should be summarily silenced.

It’s just me, and what’s acceptable is only up to collaborators. I’m going to lock the thread for a bit.


No subscription option

No subscription option to subscribe an email to get notified

This issue has been resolved in version 5.0.0 :tada:


How to save the MP4 file?

I can watch the effect. But when it's over nothing is created.

It's automatically created and overwritten based on the command line argument.
Do you have ffmpeg installed in your path?

Yes, I have installed ffmpeg.

➜  shadertoy-render git:(master) ✗ ffmpeg -h
ffmpeg version 2.7.1 Copyright (c) 2000-2015 the FFmpeg developers
  built with gcc 4.8 (Ubuntu 4.8.4-2ubuntu1~14.04)
  configuration:
  libavutil      54. 27.100 / 54. 27.100
  libavcodec     56. 41.100 / 56. 41.100
  libavformat    56. 36.100 / 56. 36.100
  libavdevice    56.  4.100 / 56.  4.100
  libavfilter     5. 16.101 /  5. 16.101
  libswscale      3.  1.101 /  3.  1.101
  libswresample   1.  2.100 /  1.  2.100
Hyper fast Audio and Video encoder

I downloaded the tarball which is of the newest version from the official website and compiled it.

What command line are you using exactly, and what's the size of the output file you specify?

➜  shadertoy-render git:(master) ✗ python shadertoy-render.py Seascape.glsl Seascape.mp4

➜  shadertoy-render git:(master) ✗ python shadertoy-render.py Seascape.glsl Seascape.mp4 --size 1920x1080 --duration 5.0 --rate 60

It seems that the option --duration 5.0 has no effect.

Is the Seascape.mp4 file ever created?

The only idea I have is for you to disable -loglevel panic in the call of ffmpeg and see what the error is, if there is any.

There is no Seascape.mp4 in the directory before.
Here are more information of the procedure.
➜  shadertoy-render git:(master) ✗ ls
docs  glsl  LICENSE  README.rst  Seascape.glsl  shadertoy-render.py
➜  shadertoy-render git:(master) ✗ python shadertoy-render.py Seascape.glsl Seascape.mp4 --size 1920x1080 --duration 5.0 --rate 10
WARNING: Traceback (most recent call last):
  File "shadertoy-render.py", line 167, in <module>
    canvas.app.run()
  File "/usr/local/lib/python2.7/dist-packages/vispy/app/application.py", line 123, in run
    return self._backend._vispy_run()
  File "/usr/local/lib/python2.7/dist-packages/vispy/app/backends/_glfw.py", line 194, in _vispy_run
    self._vispy_process_events()
  File "/usr/local/lib/python2.7/dist-packages/vispy/app/backends/_glfw.py", line 188, in _vispy_process_events
    win._on_draw()
  File "/usr/local/lib/python2.7/dist-packages/vispy/app/backends/_glfw.py", line 407, in _on_draw
    self._vispy_canvas.events.draw(region=None)  # (0, 0, w, h))
  File "/usr/local/lib/python2.7/dist-packages/vispy/util/event.py", line 436, in __call__
    self._invoke_callback(cb, event)
  File "/usr/local/lib/python2.7/dist-packages/vispy/util/event.py", line 452, in _invoke_callback
    self, cb_event=(cb, event))
  << caught exception here: >>
  File "/usr/local/lib/python2.7/dist-packages/vispy/util/event.py", line 448, in _invoke_callback
    cb(event)
  File "shadertoy-render.py", line 104, in on_draw
    self._stdout.write(framebuffer.tobytes())
AttributeError: 'numpy.ndarray' object has no attribute 'tobytes'
ERROR: Invoking <bound method RenderingCanvas.on_draw of <RenderingCanvas (Glfw) at 0x7f6cb1f7cc50>> for DrawEvent
ERROR: Invoking <bound method RenderingCanvas.on_draw of <RenderingCanvas (Glfw) at 0x7f6cb1f7cc50>> repeat 2
ERROR: Invoking <bound method RenderingCanvas.on_draw of <RenderingCanvas (Glfw) at 0x7f6cb1f7cc50>> repeat 3
ERROR: Invoking <bound method RenderingCanvas.on_draw of <RenderingCanvas (Glfw) at 0x7f6cb1f7cc50>> repeat 4
ERROR: Invoking <bound method RenderingCanvas.on_draw of <RenderingCanvas (Glfw) at 0x7f6cb1f7cc50>> repeat 5
ERROR: Invoking <bound method RenderingCanvas.on_draw of <RenderingCanvas (Glfw) at 0x7f6cb1f7cc50>> repeat 6
ERROR: Invoking <bound method RenderingCanvas.on_draw of <RenderingCanvas (Glfw) at 0x7f6cb1f7cc50>> repeat 7
ERROR: Invoking <bound method RenderingCanvas.on_draw of <RenderingCanvas (Glfw) at 0x7f6cb1f7cc50>> repeat 8
ERROR: Invoking <bound method RenderingCanvas.on_draw of <RenderingCanvas (Glfw) at 0x7f6cb1f7cc50>> repeat 9
ERROR: Invoking <bound method RenderingCanvas.on_draw of <RenderingCanvas (Glfw) at 0x7f6cb1f7cc50>> repeat 10
ERROR: Invoking <bound method RenderingCanvas.on_draw of <RenderingCanvas (Glfw) at 0x7f6cb1f7cc50>> repeat 20
➜  shadertoy-render git:(master) ✗ ls
docs  glsl  LICENSE  README.rst  Seascape.glsl  shadertoy-render.py
➜  shadertoy-render git:(master) ✗

Here is the information after disabling -loglevel panic.
➜  shadertoy-render git:(master) ✗ python shadertoy-render.py Seascape.glsl Seascape.mp4 --size 1920x1080 --duration 5.0 --rate 10
ffmpeg version 2.7.1 Copyright (c) 2000-2015 the FFmpeg developers
  built with gcc 4.8 (Ubuntu 4.8.4-2ubuntu1~14.04)
  configuration:
  libavutil      54. 27.100 / 54. 27.100
  libavcodec     56. 41.100 / 56. 41.100
  libavformat    56. 36.100 / 56. 36.100
  libavdevice    56.  4.100 / 56.  4.100
  libavfilter     5. 16.101 /  5. 16.101
  libswscale      3.  1.101 /  3.  1.101
  libswresample   1.  2.100 /  1.  2.100
WARNING: Traceback (most recent call last):
  File "shadertoy-render.py", line 167, in <module>
    canvas.app.run()
  File "/usr/local/lib/python2.7/dist-packages/vispy/app/application.py", line 123, in run
    return self._backend._vispy_run()
  File "/usr/local/lib/python2.7/dist-packages/vispy/app/backends/_glfw.py", line 194, in _vispy_run
    self._vispy_process_events()
  File "/usr/local/lib/python2.7/dist-packages/vispy/app/backends/_glfw.py", line 188, in _vispy_process_events
    win._on_draw()
  File "/usr/local/lib/python2.7/dist-packages/vispy/app/backends/_glfw.py", line 407, in _on_draw
    self._vispy_canvas.events.draw(region=None)  # (0, 0, w, h))
  File "/usr/local/lib/python2.7/dist-packages/vispy/util/event.py", line 436, in __call__
    self._invoke_callback(cb, event)
  File "/usr/local/lib/python2.7/dist-packages/vispy/util/event.py", line 452, in _invoke_callback
    self, cb_event=(cb, event))
  << caught exception here: >>
  File "/usr/local/lib/python2.7/dist-packages/vispy/util/event.py", line 448, in _invoke_callback
    cb(event)
  File "shadertoy-render.py", line 104, in on_draw
    self._stdout.write(framebuffer.tobytes())
AttributeError: 'numpy.ndarray' object has no attribute 'tobytes'
ERROR: Invoking <bound method RenderingCanvas.on_draw of <RenderingCanvas (Glfw) at 0x7f22a5e5ec50>> for DrawEvent
ERROR: Invoking <bound method RenderingCanvas.on_draw of <RenderingCanvas (Glfw) at 0x7f22a5e5ec50>> repeat 2
ERROR: Invoking <bound method RenderingCanvas.on_draw of <RenderingCanvas (Glfw) at 0x7f22a5e5ec50>> repeat 3
ERROR: Invoking <bound method RenderingCanvas.on_draw of <RenderingCanvas (Glfw) at 0x7f22a5e5ec50>> repeat 4
ERROR: Invoking <bound method RenderingCanvas.on_draw of <RenderingCanvas (Glfw) at 0x7f22a5e5ec50>> repeat 5
ERROR: Invoking <bound method RenderingCanvas.on_draw of <RenderingCanvas (Glfw) at 0x7f22a5e5ec50>> repeat 6
ERROR: Invoking <bound method RenderingCanvas.on_draw of <RenderingCanvas (Glfw) at 0x7f22a5e5ec50>> repeat 7
ERROR: Invoking <bound method RenderingCanvas.on_draw of <RenderingCanvas (Glfw) at 0x7f22a5e5ec50>> repeat 8
ERROR: Invoking <bound method RenderingCanvas.on_draw of <RenderingCanvas (Glfw) at 0x7f22a5e5ec50>> repeat 9
Input #0, rawvideo, from 'pipe:':
  Duration: N/A, bitrate: 663552 kb/s
    Stream #0:0: Video: rawvideo (RGBA / 0x41424752), rgba, 1920x1080, 663552 kb/s, 10 tbr, 10 tbn, 10 tbc
Unknown encoder 'libx264'
➜  shadertoy-render git:(master) ✗

I googled Unknown encoder 'libx264' and ffmpeg libx264 and found this: How to quickly compile FFmpeg with libx264 (x264, H.264).
So I recompiled ffmpeg with ./configure --enable-gpl --enable-libx264. This time the MP4 file appeared, however I couldn't play it using VLC which said unable to identify the input format.

The libx264 things should be resolved. There's one bug left in this project:
AttributeError: 'numpy.ndarray' object has no attribute 'tobytes`

I'll check what it's supposed to be, maybe toarray.

Try getting latest including my fix [de66a57f1c]. Playing with VLC should work fine!
You can also use --verbose parameter to display ffmpeg output without hacking the source.

I updated numpy to 1.9.2 and now it works perfectly.
The problem about duration that I posed does't exist actually. I mistook it.
Many thanks for your problem solving!

The duration problem may have been related to the exception above.
Great, closing the ticket!


Added value class support

This MR serves to add support for value classes to Mockito Kotlin. Value classes currently break and there is no easy way around them, many users have had issues with this: https://github.com/mockito/mockito-kotlin/issues/445
This MR adds an anyValueClass() and adds it to the any() and anyOrNull() implementation. I expect I may have done a few things non-optimally as I am not too familiar with Mockito's inner workings, but I look forward to feedback from someone who knows more about Mockito argument matchers than me to help me improve this. I do think it is important to get support for value classes.

Not sure why, but tests are failing on this PR. Can you please take a look and ensure all tests are passing?

I resolved the issues with the tests, it was a relatively obscure issue that had to do with verify not being called for the test where we expected it to error out. I also went ahead and added more tests to test other scenarios like around null vs non-null and nested value classes.


DistirbutedTest 'aborted'

Hi, i'm trying to run functional test from tfs, a coded ui test, i've tried before with tfs 2015 update 2/ agent update 2 / win 7
but i always have this message "Failed to obtain durationInMs field."
untill i tried a solution given by another member, which is to use the TestAgent RTM Agent.
but when i tried to run tests as Test Plans and not assembly the bug happened again.
i'm now using the update 3 version but getting the same problem
could you help please
thank you
config :
Visual Studio Team Foundation Server 2015 - Version 14.102.25423.0  (update 3)
Test Agent  Update3 14.0.25420.1
Test machine OS version  - tried  win7 and win8
DistributedTests : La série de tests '8885' est à l'état 'Aborted'.
DistributedTests : Nombre total de tests : 1, tests réussis : 0
DistributedTests : La série de tests a été abandonnée. Journalisation des détails des journaux d'exécution.
DistributedTests : Une nouvelle série de tests a été créée.
Série de tests mise en file d'attente pour Project Collection Build Service.
DistributedTests : Test discovery started.
DistributedTests : Test Run Discovery Completed . Test run id : 8885
DistributedTests : 1 test cases discovered.
DistributedTests : Test execution started. Test run id : 8885
DistributedTests : UnExpected error occured during test execution. Try again.
DistributedTests : Error : Une ou plusieurs erreurs se sont produites.--->Failed to obtain durationInMs field.
DistributedTests : Test run aborted. Test run id: 8885
System.Exception: La série de tests a été abandonnée. Échec de la tâche.

Tâche de finalisation : RunVisualStudioTestsusingTestAgent

System.Exception: Échec de la tâche RunVisualStudioTestsusingTestAgent. Ceci a entraîné l'échec de la tâche. Pour plus d'informations, voir les journaux de la tâche.
à Microsoft.TeamFoundation.DistributedTask.Worker.JobRunner.Run(IJobContext jobContext, IJobRequest job, IJobExtension jobExtension, CancellationTokenSource tokenSource)
Le processus de travail Worker-a4fe9eab-fb43-4a60-bf35-62f75412b499 a fini d'exécuter le travail a4fe9eab-fb43-4a60-bf35-62f75412b499

Finalisation de Build

DTAExecutionHost.txt

Please see issue #1463. This happens when there is a corrupt install of the Test Agent on the machine. we recommend you uninstall the test agent, delete the folder C:\Program Files (x86)\Microsoft Visual Studio 14.0 (assuming test machine has only test agent installed and no VS is installed) and then use the Deploy Test Agent task to automatically download and install the right agent for you.
Thanks!

i tried first to uninstall the agent and delete the folder, it doesn't change anything, I've even tried with a new WIN8.1 Virtual Machine completly fresh, with an automatic download for the deploy test agent task, but still have the same problem. Any other Idea ?
thanks

@elamine In order to understand the problem further can provide following information to me:

1- In Test Agent Machine: C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\PrivateAssemblies\Microsoft.VisualStudio.TestService.TcmTestResultPublisher.d
14.98.25331.0
In TFS server: C:\Program Files\Microsoft Team Foundation Server 14.0\Application Tier\TFSJobAgent\Plugins\Microsoft.TeamFoundation.TestManagement.Server.dll
14.102.25423.0
thank you

Finally It worked by installing the English Language Pack on the Test Machine which was originally French. It's working  but it means that is not possible to run tests on different environments, I think there is a bug somewhere...

Thanks Elamine for sharing that information, it seems helpful. We tried with normal en-US machine earlier and it was working, I will try again with French machine and will update.

Just to update you, we are able to reproduce the problem with french OS machine, and are working on finding the resolution.

Thank you Vishal for updating, I'll be happy to be informed about the results

Hi Elamine, we have identified the issue and fixed it. It will be available in next deployment.

Hi Harshac, thank you for keeping me informed, please feel free communicating me any other related information in the future.

Hi all,
I have exactly the same problem (tfs 2015 update 3 on prem and clean test machine with agent 2015 update 3 with french windows 7 os)
Can you please give us some information about the next deployment.
I've tried to execute the latest version of the RunDistributedTests and it failed with the same error.
Can you provide us a fix to deploy or give us the fix availability
Thank you
David

Finally It worked by installing the English Language Pack on the Test Machine which was originally French.

Where can I found this english package? For windows ou agent?


Different treatment of 'repressing RNAs'

We have
https://www.pombase.org/gene/SPNCRNA.9001
repressing RNA for
https://www.pombase.org/gene/SPBC8E4.01c
https://www.pombase.org/gene/SPNCRNA.1712
for
https://www.pombase.org/gene/SPBP4G3.02
but for tco1 we have treated as alternative transcripts
translationally silent transcript from tco1 locus
https://www.pombase.org/gene/SPAC17G6.02c
I think treating as an independent ncRNA is perhaps clearer?
(need to check this is the same situation but at first glance it seems to be)

This looks like a curation issue.
The only reason tco1 has been done as alternative transcripts is that you put it on the list in https://github.com/pombase/curation/issues/61 (and I tried it first because having the RNA annotated meant the coordinates were available).


offline support

I'd like to be able to use Fresh offline. My users are in rural areas throughout the day. Sometimes they have a strong internet connection and sometimes they do not. I want to bundle my entire Fresh app to run offline via a service worker. From what I can tell, the handler() in Fresh's ServiceContext should be able to be used to take a Request from a service worker's FetchEvent and compute a Response. The esbuild runtime should be usable to bundle the service worker too (see also https://github.com/denoland/fresh/issues/858).

This sounds like a perfect use case for a Single Page Application. You ship the HTML, one (or more with code-splitting) bundle of JavaScript and CSS and maybe a service worker. The app will talk to the API's directly or through the service worker. It's all there.
Why bother using Fresh & the Island Architecture in a service worker?

A Single Page Application (SPA) may certainly be more ideal than a Multiple Page Application (MPA) but either way being able to write the application with Deno rather than Node and avoid needing to use Webpack, etc. are the top things I'm looking for.
One downside of a SPA is that larger apps suffer from high memory usage. I do not know of a way in JavaScript to remove code from memory once loaded (short of the ShadowRealm API which is currently a proposal in Stage 3). So even with code splitting once you move around the app and have loaded more and more bundles you're now consuming potentially a lot of memory. I'm not certain if this is the cause of some of the performance issues I've seen with apps I've worked in though.
What I think would be ideal though is to define an app that runs on the edge (e.g. Deno Deploy) and then be able to reuse a bunch of that app's route code via a service worker. Fresh might not be the answer but it is the only Deno-based web UI framework that I know of with meaningful adoption.
I could see a service worker dynamically loading whichever route code is needed when a request is made for a route or, if the app is small enough, keeping everything in memory more like code running on the edge.

With regard to using Deno instead of node for developing your SPA I am setting this up in ccssmnn/relaxed-spa (demo: https://relaxed-spa.deno.dev) as a simple starting point. The goal is to develop client and server code in one Deno project with minimum boilerplate.
It reuses the JIT client code bundling from fresh as well as the reloading mechanism on server restart.

Something else that building the Fresh handler for offline usage gives over a SPA PWA solution is true dynamic routing and pages. With a SPA any data driven content has to be done during hydration whereas I want to minimize/reduce JavaScript in the document window and would prefer to fetch/load the data inside the service worker and then serve up to the document window dynamic content on demand.

Closing as duplicate of #893

This is #893 @marvinhagemeister.
Using something akin to Workbox.js feels more inline with Fresh than depending on an single-page application (SPA). This is the route I've been taking, but I'd like to see this as a recipe for Fresh to support real progressive isomorphic web applications, which Fresh seems well suited for.

Closing as duplicate of https://github.com/denoland/fresh/issues/893

This is https://github.com/denoland/fresh/issues/893 @marvinhagemeister.

Whoops 😅

Closing as it's not something we're planning to do.


Add case-insensitive equality operators to grammar

Resolves #15639
Microsoft Reviewers: Open in CodeFlow

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 9.37%. Comparing base (108d816) to head (e8adbc6).
Report is 1452 commits behind head on main.

:exclamation:  There is a different number of reports uploaded between BASE (108d816) and HEAD (e8adbc6). Click for more details.
HEAD has 4 uploads less than BASE

Flag
BASE (108d816)
HEAD (e8adbc6)

dotnet
4
0

Additional details and impacted files

@@             Coverage Diff             @@
##             main   #15640       +/-   ##
===========================================
- Coverage   94.28%    9.37%   -84.91%
===========================================
  Files        1113        7     -1106
  Lines      100791      288   -100503
  Branches     8734      123     -8611
===========================================
- Hits        95028       27    -95001
+ Misses       4595      261     -4334
+ Partials     1168        0     -1168

Flag
Coverage Δ

dotnet
?

typescript
9.37% <ø> (+1.66%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.
see 1104 files with indirect coverage changes

----
🚨 Try these New Features:

Flaky Tests Detection - Detect and resolve failed and flaky tests
JS Bundle Analysis - Avoid shipping oversized bundles


Possible paid collaboration for a project?

Hey there,
couldn't find your email so writing here.
Would you be interested in a paid collaboration with my company? We are looking to develop an app that removes objects from images (similar to this: https://apps.apple.com/us/app/touchretouch/id373311252) using inpaint technique. We will take care of the entire app development, including the actual component for the masking, etc'. The user will use his fingers to choose the "removed object". But we need help to develop to object inpaint removal algorithm under the hood.
Is it something you'll find interesting?
Roi

Hey Roi!
I'm more of a hobbyist CV engineer and my code is a very crude implementation of the algorithm presented in the paper.
I would also recommend you to look at a more modern concept "Adversarial Object Removal":
Paper:
https://papers.nips.cc/paper/7997-adversarial-scene-editing-automatic-object-removal-from-weak-supervision.pdf
Code:
https://github.com/rakshithShetty/adversarial-object-removal
Some cool ideas there.
Best,
Nick

Hey @cor3bit ! Thank you for the info. Much appreciate it :)
Do you have Skype by chance? We can still use your consultant skills either way.
BR,
Roi


pythonic_params do not convert the parameter type

Description
The parameter type is not converted if the parameter is renamed to become pythonic.
I have pythonic_params=True and the following spec:
/reposet/{id}:
    delete:
      operationId: delete_reposet
      parameters:
      - explode: false
        in: path
        name: id
        required: true
        schema:
          type: integer
        style: simple

This spec defines a single integer parameter in the path.
There is the following controller:
async def delete_reposet(request: web.Request, id_: int) -> web.Response:
    print(type(id_))
    return web.Response(status=200)

Expected behavior
The controller prints int for each request.
Actual behavior
The controller prints str for each request. In other words, the type is not converted. If I rename id to id_ everywhere in the spec, the type is converted and the controller prints int as expected. If I remove pythonic_params and rename id_ to id in the controller, it prints int, too.
Steps to reproduce
(already covered by the description)
Additional info:
Output of the commands:

python --version 3.7.5
pip show connexion | grep "^Version\:" 2.4.0

If I remove pythonic_params and rename id_ to id in the controller, it prints int, too.


bio generator not hooking to power conduits

running forestry 1.7.10-<IP_ADDRESS> and ender io 1.7.10-<IP_ADDRESS>8
so the ender io fluid pips hook into the bio generator just fine, how ever the energy conduits wont hook in to any of the 6 sides of the generator and beating it with the yeta wrench didn't help either X3

This is a Mekanism bug - see #2538

The Forestry BioGenerator produces EU and not RF - so it can't work with the EnderIO energy conduits.


Detox can't seem to connect to the test app on android.

What happened?
i configured same as detox document for android, it run on ios  perfectly but not on android. In android, detox is not able to connect.
DetoxTest.java ---->
             package <packagename>;
              import com.wix.detox.Detox;
              import com.wix.detox.config.DetoxConfig;

              import org.junit.Rule;
              import org.junit.Test;
              import org.junit.runner.RunWith;

              import androidx.test.ext.junit.runners.AndroidJUnit4;
              import androidx.test.filters.LargeTest;
              import androidx.test.rule.ActivityTestRule;

              @RunWith(AndroidJUnit4.class)
              @LargeTest
              public class DetoxTest {
                  @Rule
                  public ActivityTestRule<MainApplication> mActivityRule = new ActivityTestRule<>(MainApplication.class, false, false);

                  @Test
                  public void runDetoxTests() {
                      DetoxConfig detoxConfig = new DetoxConfig();
                      detoxConfig.idlePolicyConfig.masterTimeoutSec = 90;
                      detoxConfig.idlePolicyConfig.idleResourceTimeoutSec = 60;
                      detoxConfig.rnContextLoadTimeoutSec = (BuildConfig.DEBUG ? 180 : 60);

                      Detox.runTests(mActivityRule, detoxConfig);
                  }
              }

starter.test.js ------>
                    describe('Login flow', () => {
                      beforeAll(async () => {
                        await device.launchApp();
                      });

                      it('should login successfully', async () => {
                        await expect(element(by.id('login'))).toBeVisible();
                        await expect(element(by.id('username'))).toBeVisible();
                        await element(by.id('username')).typeText('tester');
                        await expect(element(by.id('password'))).toBeVisible();
                        await element(by.id('password')).typeText('password');
                        await element(by.id('signIn')).tap();
                      });
                    });

                    describe('Home flow', () => {
                      it('home screen', async () => {
                        await expect(element(by.id('welcome'))).toBeVisible();
                        await element(by.id('viewHistory')).tap();
                        await element(by.id('historyBackArrow')).tap();
                        await element(by.id('settingsBottomIcon')).tap();
                      });
                    });

                    describe('Settings flow', () => {
                      it('settings screen', async () => {
                        await element(by.id('signOut')).tap();
                      });
                    });

What was the expected behaviour?
The test should have run on android.
Was it tested on latest Detox?

[X] I have tested this issue on the latest Detox release and it still reproduces.

Did your test throw out a timeout?

[x] I have followed the instructions under Identifying which synchronization mechanism causes us to wait too much.

Help us reproduce this issue!
I followed the detox document for the setup and for writing tests, nothing extraordinary.
In what environment did this happen?
Detox version: 20.1.5
React Native version: 0.70.6
Has Fabric (React Native's new rendering system) enabled: (yes/no) no
Node version: 16.18.1
Device model:
Android version: 11.0.11
Test-runner : jest
Detox logs
Detox logs
paste logs here!

Device logs
Device logs
paste your device.log here!

More data, please!
No response

had the same issue with firebase and detox clashing on dependency. This worked for us
androidTestImplementation('com.wix:detox:+') {
    exclude module: "protobuf-lite"
}

related to https://github.com/android/android-test/issues/999

@grgmo in which file I need to add those lines, please?

@grgmo in which file I need to add those lines, please?

It should be in android/app/build.gradle

still happens on Detox 20.9

had the same issue with firebase and detox clashing on dependency. This worked for us
androidTestImplementation('com.wix:detox:+') {
    exclude module: "protobuf-lite"
}

similar to android/android-test#999

This was a LIFESAVER, thanks!

still happens on Detox 20.9

By any chances, did you managed to fix it ? Got the same issue. With this kind of specific logs :
artifacts-manager onLaunchApp
19:58:03.366 detox[41625] i child-process:SPAWN_STDOUT INSTRUMENTATION_RESULT: shortMsg=Process crashed.
INSTRUMENTATION_CODE: 0

device An error occurred while waiting for the app to become ready. Waiting for disconnection...
  error: Failed to run application on the device

  HINT: Most likely, your tests have timed out and called detox.cleanup() while it was waiting for "ready" message (over WebSocket) from the instrumentation process.

had the same issue with firebase and detox clashing on dependency. This worked for us
androidTestImplementation('com.wix:detox:+') {
    exclude module: "protobuf-lite"
}

similar to android/android-test#999

This plus adding
implementation 'com.facebook.soloader:soloader:0.10.4+' fixed it for me finaaaally : https://github.com/wix/Detox/issues/3487

still occurring in 20.13.1

This fixed my issue: gradle 7.2.2
https://stackoverflow.com/questions/72564710/react-native-crash-release-build-fatal-exception-create-react-context


Added reversed, start, and type attributes to Ol element

For ceylon/ceylon-sdk#659.

Can one of the admins verify this patch? (see README)

Looks good, thanks!


Merged vertices of the Enemy faceplate to remove z-fighting

Small and quick fix to issue #6

Unfortunately, model changes can't be made like this and I instead have to change the source (it's an automated process to generate the model files). I'll be editing the source!


WinUI 2 Gallery makes all controls's corner radius 8, deviating from fluent design spec

Describe the bug
WinUI 2 Gallery is overriding ControlCornerRadius in App.xaml, causing all controls to have a corner radius of 8.
Steps to reproduce the bug
Just launch the app and observe button or check boxes.
Expected behavior
ControlCornerRadius stays at 4. If some specific control needs to have a corner radius of 8, customize the resources only for that control.
Actual behavior

Screenshots

You can see WinUI 2's button is rounder, whereas WinUI 3 is "normal", having a corner radius of 4, as defined in WinUI 2.6+ styles.
Gallery version (found on Settings page):
WinUI 2 Gallery <IP_ADDRESS>
Windows 10 version:

[x] Insider Build (22621.1)
[ ] November 2019 Update (18363)
[ ] May 2019 Update (18362)
[ ] October 2018 Update (17763)
[ ] April 2018 Update (17134)
[ ] Fall Creators Update (16299)
[ ] Creators Update (15063)
[ ] Anniversary Update (14393)
(Shouldn't the template be updated to say Windows 11?)

Device form factor:

[x] Desktop
[ ] Mobile
[ ] Xbox
[ ] Surface Hub
[ ] IoT

Additional context
A UWP community member @yoshiask noticed that the change is introduced in https://github.com/microsoft/WinUI-Gallery/pull/934/commits/4fea127fa3e046e02f7f457fae407dad7ee0c256, and his guess for the bug is, lemme quote:

Most everything else in that commit is related to the tiles on the home page. I'm guessing they wanted to change the corner radius for those tiles, but instead changed it for literally every control

If this is indeed the case, simply moving the ControlCornerRadius override to HeaderTiles.xaml should fix it while keeping the desired behavior.

Looks like this is fixed.


Delete Button is not detecting in headless mode

Delete Button is not detecting in headless mode while executing delete account or contact

Could you provide the test that you are running and I'll troubleshoot it.
Thanks

Hi,
Please  do the following two updates and try:
1.Add below lines of code in "Open Account" test class line number 35.
xrmBrowser.ThinkTime(2000);
xrmBrowser.CommandBar.ClickCommand("Delete");
2. In test settings add below line in browser settings:
Headless = true
I am able to reproduce the issue with these changes. Please let me know if any additional information required.

After reproducing internally, the resolution of the browser in Headless mode is impacting the scaling of the ribbon controls during the test.
To resolve this problem, try the following:
xrmBrowser.CommandBar.ClickCommand("Delete", "", true);

This will traverse the More Commands tree and select the Delete button from there. We've confirmed this change will resolve the issue.
I'll close the issue at this time. If you encounter the problem again you can create a new issue or reopen the existing one.
Thanks!


feature/labelInLoop

According to feedback from #467, I reimplemented the feature of the label statement under the context of loop structure. The design ideas are as follows：

The operations BreakNested and ContinueNested are added. The two JS instructions both require a number input that represents the depth of the loop that the instruction wants to break or continue, and if the number exceeds the actual loop depth, then the actual loop depth is equal to depth %= actualLoopDepth.

In JSLifter, any loop structure has a begin and end block. For example, beginWhileLoopBody. Each time it is loaded, actualLoopDepth is incremented, and the start position of this loop in the overall code string is recorded. When endWhileLoop is loaded, actualLoopDepth is decremented, and the recorded position for the current loop is popped.

During the breakNested lifting process, the expected depth of the target loop to break is first determined using input % actualLoopDepth. Then, the starting position of the target loop is obtained from the recorded loop stack. Simultaneously, it is checked whether a label already exists at that position. If not, the label will be inserted, all subsequent loop starting positions are updated, and the position is marked as inserted. The continueNested process follows the same steps.

Hi @saelo, I have made improvements in the following three aspects based on your insightful feedback:

Rename label operation name to LoopBreakNested & LoopContinueNested;
Update implement of LoopBreakNested & LoopContinueNested JsOperation, made the depth a property of these.
Update operationMutator, mutate the depth property of these.


The 'Select All' button and the little arrow haven't been separated on one ADLS Gen1 account's toolbar

Storage Explorer Version: 1.25.0-dev
Build Number: 20220711.1
Branch: main
Platform/OS: Windows 10/Linux Ubuntu 20.04/MacOS Monterey 12.4 (Apple M1 Pro)
Architecture: ia32/x64
How Found: AD-hoc testing
Regression From: Not a regression
Steps to Reproduce

Expand 'Data Lake Storage Gen1 (Preview)' -> Open one ADLS Gen1 account.
Observe its toolbar.
Check whether the 'Select All' button and the little arrow are two separate buttons.

Expected Experience
The 'Select All' button and the little arrow are two separate buttons.
Actual Experience
The 'Select All' button and the little arrow haven't been separated.

Verified this issue on the build main/20220712.2. Fixed.