Only enforce W001 on Page inheritor

If your Page inheritor has a ForeignKey to a model that does not relate to the Wagtail page tree, then having on_delete=models.CASCADE should be fine.
E.g. this:
class Survey(Page):
    organization = models.ForeignKey(
        'Organization',
        verbose_name=_('Which organization owns this survey'),
        on_delete=models.CASCADE,
    )

Raises:
Performing system checks...

System check identified some issues:

WARNINGS:
my_app.Survey.organization: (wagtailcore.W001) Field hasn't specified on_delete action
	HINT: Set on_delete=models.SET_NULL and make sure the field is nullable.

Hi @benjaoming - I don't think that's correct. Here, on_delete=models.CASCADE means "if the organisation is deleted, any Survey pages related to the organisation will also be deleted". It's not safe to do that, because deleting a page record without updating the tree-related fields (path, depth, numchild) will corrupt the page tree.

You're absolutely right, I was very blunt there, sorry about that. I've changed the warning message instead.
Wondering: Will reopening this PR show additional changes done with git push -f ?

Thanks for the update! Github won't let me reopen this PR now ("The w0001-only-on-Page branch was force-pushed or recreated.") so feel free to open a new one.


Does not work with D3 V4 Alpha

Hi,
it seems like your (otherwise excellent) extension doesn't work with D3 version 4 (which is currently still in Alpha, so there's that). Please check if your extension still works, when D3 v4.0.0 comes out.
Greetings.

<IP_ADDRESS> is there and it doesn't work for me as well.

It looks like @cgav forked it and made it work with v4
https://github.com/cgav/d3-tip

@hkelly93 It is still very experimental, but works so far in my use case.

Alright, thanks. Maybe include some note in your Readme, so people are aware about the issue with version 4. This issue can be closed, I guess.


Issue165 readme figures

Added figures and updated README.rst
Fixes, in devel, Issue #165

For readability, could this PR be done to devel instead ?

Codecov Report

Merging #167 into master will decrease coverage by 9.82%.
The diff coverage is 26.14%.

@@            Coverage Diff             @@
##           master     #167      +/-   ##
==========================================
- Coverage      55%   45.17%   -9.83%
==========================================
  Files          66       70       +4
  Lines       16027    20612    +4585
==========================================
+ Hits         8815     9311     +496
- Misses       7212    11301    +4089

Impacted Files
Coverage Δ

tofu/imas2tofu/_core.py
0.74% <ø> (ø)

tofu/version.py
100% <ø> (ø)
:arrow_up:

tofu/data/_core.py
41.06% <ø> (-10.19%)
:arrow_down:

tofu/mag/test_equimap.py
0% <0%> (ø)

tofu/mag/test_ripple.py
0% <0%> (ø)

tofu/mag/equimap.py
0% <0%> (ø)

tofu/mag/mag_ripple/__init__.py
0% <0%> (ø)

tofu/mag/regression_test.py
0% <0%> (ø)

tofu/mag/magFieldLines.py
0% <0%> (ø)

tofu/tests/tests02_data/tests03_core.py
99.08% <100%> (ø)
:arrow_up:

... and 25 more

Continue to review full report at Codecov.

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

Created new PR


The Autocomplete on VsCode seems not work in the right line

Before submitting your bug report

[X] I believe this is a bug. I'll try to join the Continue Discord for questions
[X] I'm not able to find an open issue that reports the same bug
[X] I've seen the troubleshooting guide on the Continue Docs

Relevant environment info
- OS:win10
- Continue:v0.8.27
- IDE:VSCode 1.89.0

Description
I add new line at first bold place
but the completion(latatic) seems based on second bold place which is completely irrelevant with my input
here is the code

int hcos_get_usage(const pid_t pid, __uint64_t seconds, HCOS_USAGE *usage)
{
*****
*****
usage->status   = fstat.processStatus;
usage->cpuUsage = (sstat.processTotoalTime - fstat.processTotoalTime) /
(sstat.cpuTotalTime - fstat.cpuTotalTime);
usage->memUsage = fstat.rss;
usage->fdUsage  = fd_count;
usage free(fd_list_iter->fdnext);
return 0;
}
int hcos_check_fd(const pid_t pid, char *file_path, __uint64_t *max_counts)
{
******
total 85 line
******
for (struct fdinfo *fd_list_iter = fd_list_head; fd_list_iter != NULL; fd_list_iter = fd_list_head)
{
fd_list_head = fd_list_head->fdnext;
free(fd_list_iter);
}
******
return 0;
}

To reproduce
1.setup local ollama
2.config continue

{
"title": "ollama",
"model": "llama3",
"completionOptions": {},
"apiBase": "http://<IP_ADDRESS>:11434",
"provider": "ollama"
}
],
"customCommands": [
{
"name": "test",
"prompt": "{{{ input }}}\n\nWrite a comprehensive set of unit tests for the selected code. It should setup, run tests that check for correctness including important edge cases, and teardown. Ensure that the tests are complete and sophisticated. Give the tests just as chat output, don't edit any file.",
"description": "Write unit tests for highlighted code"
}
],
"tabAutocompleteModel": {
"title": "Llama3",
"provider": "ollama",
"model": "llama3",
"apiBase": "http://<IP_ADDRESS>:11434"
},
"tabAutocompleteOptions": {
"maxPromptTokens": 4000
},
"allowAnonymousTelemetry": true,
"contextProviders": [
{
"name": "code",
"params": {}
},
{
"name": "docs",
"params": {}
}

3.enable auto completion
4.write the code and wait completion
Log output
No recent errors in log console.

@RedIce007 there is a chance that this happens because the model being used is Llama 3, which was not trained for tab-autocomplete. I would recommend trying starcoder2:3b, which is trained on a "Fill in the middle" format. See here for a related explanation of why this is important

@RedIce007 there is a chance that this happens because the model being used is Llama 3, which was not trained for tab-autocomplete. I would recommend trying starcoder2:3b, which is trained on a "Fill in the middle" format. See here for a related explanation of why this is important

Seems starcoder2:7b working better, Thanks a lot. How do I know a model is trained for tab-autocomplete or not? Are all models in code version(like codeqwen) available?


Impossible to set top padding in JVFloatLabeledTextView between label and input text

Usually i use the textContainerInset property in UITextViews when I'm required to implement padding around the input control.
I found out it's impossible to set the top padding, since it's overwritten to allow correct placement of the floating label.
I believe it would be helpful to change the visibility of this
@property (nonatomic) CGFloat startingTextContainerInsetTop;
by making it public

Fixed via #153 (thanks!)


Catching keyboard key: Angle bracket

Hi,
How is angle bracket '<' (or '>' depending on keyboard layout) caught with GLFW. As far as I can see here this key doesn't have a definition, and when I try to log it I get key unknown.
Any tips?

That sounds like a bug in GLFW. What platform are you on and what scancode do you get for that key?

@alexpanter

As far as I can see here this key doesn't have a definition

The so-called named keys, attempt to put a name on physical keys of a keyboard. As already known, many physical keys actually have more than one virtual keys embedded on them, e.g. (',', '<'), ('[', '{'), ... As far as I can tell, GLFW gives names for those physical keys based on the first(leftmost on examples above) virtual key they represent. Therefore, that seemingly leaves the second(rightmost above) virtual keys hanging without a GLFW name, even thought they actually have! GLFW_KEY_COMMA actually represents the physical key that contains both ',' and '<', therefore it's the definition you've been searching for. The same follows for other keys too, e.g. if we wanted the definition of the '$' key we would use GLFW_KEY_4.
That being said, what you are arguing for is why there isn't a definition for double-faced keys like '$': GLFW_KEY_DOLLAR? As far as I can tell, from a technical standpoint it's possible, like #define GLFW_KEY_DOLLAR GLFW_KEY_4, with the meaning of: There is a unique physical key that has 2 different names. Nothing wrong here, and would save you from your first astonishment, when you encountered the missing definition. Of course, it's not that simple, as it just might decrease entropy in a few local pockets, while increase entropy overall for the system. That could be a different issue on its own, but I'll leave @elmindreda to decide upon it, as there are other issues with higher priority.

and when I try to log it I get key unknown.

Now that, could be a bug.
On my system though (Windows 10) I get the expected GLFW_KEY_s with scancodes 51, 52 for (',', '<') and ('.', '>') respectively.

Hi,
So after doing some digging, I was able to catch it as GLFW_KEY_WORLD_1, as I have a Danish keyboard layout.
So perhaps it should not be listed as a bug. But I did wonder, why there shouldn't be a define for either "angle bracket" or "less than"/"greater than". Is this an issue with different layouts?
Or perhaps, I'm meant to use glfwSetKeyCallback for more general use, and glfwSetCharCallback for more localization-specific input? I have never used the second option..
For completeness' sake: I'm building a game engine, so I'm also looking for a portable/appropriate way of handling these things.
I had several other small funny things, like grave accent and acute accent being switched, minus instead of slash, etc. So I of course created a language-specific keyboard mapper.
But please don't spend time on this. I would consider it a solved problem now. :)
And thank you for looking into it!

Hi @alexpanter ,
looks like you are not using these correctly.
The key callback is mainly for games which need the position of a physical key. For example, you want WASD movement, you use the W key constant and independent of what is written on your keyboard (might by a Z on French keyboard) it is always the key on the position of the W key on an english keyboard.
If you need the input for text you should not hack together some mapping that only works in some cases for your keyboard layout. You should use the char callback, so when anyone with a different layout presses their key labeled 1 you actually get a 1 character.


Error when installing DoctrineBehaviors in a fresh Symfony install

When I'm trying to install DoctrineBehaviors in a fresh symfony 5 install, i get an autowiring error:
In DefinitionErrorExceptionPass.php line 54:
Cannot autowire service "Knp\DoctrineBehaviors\Provider\UserProvider": argu   !!    ment "$security" of method "__construct()" references class "Symfony\Compon   !!    ent\Security\Core\Security" but no such service exists.
I could fix this by installing the composer require symfony/security-bundle. I think there might be a missing package in the composer.json or update to the Symfony Security-Core.
Here the full installation :
**~composer require knplabs/doctrine-behaviors**
Using version ^2.0 for knplabs/doctrine-behaviors
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Restricting packages listed in "symfony/symfony" to "5.1.*"

Prefetching 8 packages 🎶 💨
  - Downloading (100%)

Package operations: 8 installs, 0 updates, 0 removals
  - Installing ramsey/collection (1.1.1): Loading from cache
  - Installing brick/math (0.9.1): Loading from cache
  - Installing ramsey/uuid (4.1.1): Loading from cache
  - Installing nette/utils (v3.1.3): Loading from cache
  - Installing nette/finder (v2.5.2): Loading from cache
  - Installing symplify/package-builder (8.3.17): Loading from cache
  - Installing symfony/security-core (v5.1.6): Loading from cache
  - Installing knplabs/doctrine-behaviors (v2.0.7): Loading from cache
Writing lock file
Generating optimized autoload files
ocramius/package-versions: Generating version class...
ocramius/package-versions: ...done generating version class
60 packages you are using are looking for funding.
Use the `composer fund` command to find out more!

Symfony operations: 1 recipe (832af8450345f4cf51605936782dca41)
  - Configuring knplabs/doctrine-behaviors (>=v2.0.7): From auto-generated recipe
Executing script cache:clear [KO]
 [KO]
Script cache:clear returned with error code 1
!!
!!  In DefinitionErrorExceptionPass.php line 54:
!!
!!    Cannot autowire service "Knp\DoctrineBehaviors\Provider\UserProvider": argu
!!    ment "$security" of method "__construct()" references class "Symfony\Compon
!!    ent\Security\Core\Security" but no such service exists.
!!
!!
!!
Script @auto-scripts was called via post-update-cmd

Installation failed, reverting ./composer.json to its original content.

You need to require the symfony/security-bundle package before it

Closing as resolved

This is not resolved: I shouldn’t have to require symfony/security-bundle to use the translatable behavior. Services should be conditionally defined.

Feel free to send PR with improvement.


Recommendation: Use CSS instead of a GIF for the fire animation on the grift counter

The current fire GIF appears low-resolution, pixelated, and lacks scalability. There are many pure CSS fire animation solutions available, which would offer better performance and scalability.

The pixelation is a stylistic choice. What are the scalability issues you're seeing?

The pixelation is a stylistic choice. What are the scalability issues you're seeing?

I prefer the text and flame to be scaled dynamically with the screen size instead of being fixed in pixels. On larger screens, the grift counter is hardly noticeable.


in car only

Describe the feature
I think there should be a true/false option in the config file to only allow the user to use the CAD/MDT command while in a car, as some servers may want officers to use the CAD only in the car, as they do in real life (IRL).
Additional Context
i am unsure of what else

please open this request in the correct repo. This isn't the tab repository.


Repo sync for protected CLA branch

The pull request is created from main637808059115632107 to main to fix git push error for protected CLA branch

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


Docs: Remove inline markdown links before truncating text

Note: I wasn't able to find a ticket for this, let me know if you'd like me to file one.
The IndexTable component truncates item descriptions at a fixed length. Some descriptions contain markdown links, which add to the total length, but are not rendered. This results in some very brief descriptions (example below from the VectorStores table).
This PR cleans markdown links from the strings before truncating them.

Thanks for this @dinghar!
I'm not sure this is an improvement - I think the proper fix would be to somehow be able to specify this field manually.


Feature: Simulation Time

Some use cases may want to use simulation time rather than seconds. Steps to complete:

Abstract time usage to trait (implemented by system time)
Add implementation time trait implementation (this possibly exists already - do some googling)
Update user config to be able to opt into sim time (high level parameter / config interval_secs -> more generic interval?)

As a first step for this, we can pull out the time based functionality in sim-ln into a Clock trait.
There's some debate as to whether simulation time will work with real nodes, because we can only go as fast as the underlying node can process payments. That said, with the addition of #165 we'd be interested in simulation time (as the simulated nodes are incredibly cheap to run) so I'd like to start down this path.


Can't edit the text field for coordinates  under LED Layout

Bug report, debug log and your config file (FULL LOGS ARE MANDATORY)

Steps to reproduce
Edit the text field for the LED coordinates under LED Layout Tab
What is expected?
Edit the values for hmax, hmin, vmax, vmin and save new layout
What is actually happening?
The cursor jumps continuously to the beginning of the text field, you can't edit nor select the text because the of this gui bug
System
HyperHDR Server:

Build:           (HEAD detached at ead6db4) (Awawa-dda6207/ead6db4-1645993537)
Build time:      Feb 27 2022 20:34:47
Git Remote:      https://github.com/awawa-dev/HyperHDR
Version:         <IP_ADDRESS>beta1
UI Lang:         en (BrowserLang: de-DE)
UI Access:       expert
Avail Capt:      Linux (V4L2)
Database:        read/write

HyperHDR Server OS:

Distribution:   Debian GNU/Linux 11 (bullseye)
Architecture:   arm64
CPU Type:       Raspberry Pi 4 Model B Rev 1.4
CPU Revision:   c03114
CPU Hardware:   BCM2835
Kernel:         linux (5.10.92-v8+ (WS: 64))
Qt Version:     5.15.2
Browser:        Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.3 Safari/605.1.15

https://user-images.githubusercontent.com/49795210/156402461-2e4aec29-1fbc-43e5-a264-333cd3e6ac1f.mp4

Fixed


Set track-block-metadata-from flag to a non-zero value when sequencer is enabled (required for timeboost)

Corresponding Nitro PR- https://github.com/OffchainLabs/nitro/pull/2765
Part of NIT-2838

Should this be applied on top of https://github.com/OffchainLabs/nitro-testnode/pull/95 instead?

Should this be applied on top of #95 instead?

its the other way around, since this PR includes the config changes required for the main timeboost nitro PR.


AZURE LUIS cognitive services AttributeError: 'PredictionOperations' object has no attribute 'get_slot_prediction'

Please provide us with the following information:

This issue is for a:
- [X ] bug report -> please search issues before submitting
- [ ] feature request
- [ ] documentation issue or request
- [ ] regression (a behavior that used to work and stopped in a new release)

Minimal steps to reproduce

import json
import creds
import pprint
from azure.cognitiveservices.language.luis.runtime import LUISRuntimeClient
from msrest.authentication import CognitiveServicesCredentials

def predict_from_model(app_id, predictionRequest, is_printing=False):
    '''ENDPOINT'''
    # print('app_id : ', app_id)
    runtimeCredentials = CognitiveServicesCredentials(creds.predictionKey)
    clientRuntime = LUISRuntimeClient(endpoint=creds.predictionEndpoint, credentials=runtimeCredentials)
    predictionResponse = clientRuntime.prediction.get_slot_prediction(app_id, "Production", predictionRequest)
    return predictionResponse

published_app_id = "28a4d09e-a-LUIS-app-id-endpoint"
predictionRequest = {"query":"Hi you can help me by exploring my options to travel from Paris to San Jose."}
predicted = predict_from_model(published_app_id, predictionRequest, is_printing=True)

Any log messages given by the failure

C\...\luis\trigger_predict_endpoint.py in predict_from_model(app_id, predictionRequest, is_printing)
     14     runtimeCredentials = CognitiveServicesCredentials(creds.predictionKey)
     15     clientRuntime = LUISRuntimeClient(endpoint=creds.predictionEndpoint, credentials=runtimeCredentials)
---> 16     predictionResponse = clientRuntime.prediction.get_slot_prediction(app_id, "Production", predictionRequest)
     17
AttributeError: 'PredictionOperations' object has no attribute 'get_slot_prediction'

Expected/desired behavior

This code worked two days ago and now it does not.
I followed the doc down there and it has not changed. I cannot find any news regarding a deprecation...
Thanks you !

https://docs.microsoft.com/en-us/python/api/azure-cognitiveservices-language-luis/azure.cognitiveservices.language.luis.runtime.operations.predictionoperations?view=azure-python#get-slot-prediction-app-id--slot-name--prediction-request--verbose-none--show-all-intents-none--log-none--custom-headers-none--raw-false----operation-config-
OS and Version?

Windows 10 21H1
Python 3.8.1

Hi. Have you resolve this problem? I'm having the same issue.


Prepare for Snapshots release 0.8.4

Current dependencies on/for this PR:

main

PR #111   👈

This stack of pull requests is managed by Graphite.


Bump otto to 0.2.0

Thank you for the contribution. It was merged directly as af924c7d655b1997301959ebe9dc56549107dbba to keep commit history cleaner. Your contribution is still credited to you.


New version LogDensityProblems: 0.8.1

Registering: LogDensityProblems
Repository: https://github.com/tpapp/LogDensityProblems.jl
Version: v0.8.1
Commit: 7ea93f7a08b61064be018a1127262ff528a03217
Proposed by: @tpapp
Reviewed by: @tpapp
Reference: https://github.com/tpapp/LogDensityProblems.jl/commit/7ea93f7a08b61064be018a1127262ff528a03217#commitcomment-33271222

Would be good to add some compatibility constraints, if nothing else on Julia itself, e.g.
[compat]
julia = "0.7, 1"

if this package works on Julia 0.7 and 1.X.


Upgrade version.mockito 3.12.3 -> 3.12.4

This PR contains the following updates:

Package
Update
Change

org.mockito:mockito-errorprone
patch
3.12.3 -> 3.12.4

org.mockito:mockito-inline
patch
3.12.3 -> 3.12.4

org.mockito:mockito-core
patch
3.12.3 -> 3.12.4

Release Notes

mockito/mockito
v3.12.4
Compare Source
Changelog generated by Shipkit Changelog Gradle Plugin
3.12.4

2021-08-25 - 1 commit(s) by Rafael Winterhalter
No notable improvements. No pull requests (issues) were referenced from commits.

[ ] If you want to rebase/retry this PR, check this box.

Suggested commit message:
Upgrade Mockito 3.12.3 -> 3.12.4

See:
- https://github.com/mockito/mockito/releases/tag/v3.12.4
- https://github.com/mockito/mockito/compare/v3.12.3...v3.12.4


feat(cache): allow cache to be persisted

We'll now persist the cache so that expensive operations can be cached
to speed up building the slug.
Fixes #95
Disclaimer: still have to test if this even works, this is just PoC for now.

Thanks for the contribution! Please ensure your commits follow our style guide. This code will be tested once a Deis maintainer reviews it.

Thanks for taking a stab at this!
One feature that might be nice is checking for changes in the cache before trying to upload it. Travis CI's caching tool uses md5deep to recursively check a directory for file changes by comparing file hashes.
Another nice feature to have would be an environmental variable to disable caching. The builder could then set this value when starting slugbuilder to toggle caching.

@Joshua-Anderson Thanks for the feedback :)

One feature that might be nice is checking for changes in the cache before trying to upload it. Travis CI's caching tool uses md5deep to recursively check a directory for file changes by comparing file hashes.

Great idea! I wonder were we would store the hashes though, any suggestions there?

Another nice feature to have would be an environmental variable to disable caching. The builder could then set this value when starting slugbuilder to toggle caching.

I thought about that, but then again, if caching is bad for you, I think you should edit the buildpack to not copy anything to the cache location. I'm more than happy to add it, but I don't see a good use for it, and I also couldn't find a way to disable caches on Heroku.

I thought about that, but then again, if caching is bad for you, I think you should edit the buildpack to not copy anything to the cache location. I'm more than happy to add it, but I don't see a good use for it, and I also couldn't find a way to disable caches on Heroku.

For heroku, there wasn't really any good reason to disable caching because worst case you would get equivalent performance.
On deis however there are a few reasons to disable caching.

Large files can cause problems with minio: deis/registry#62
For some apps that just use the cache for dependencies it could actually be slower. If your dependencies are stored in s3 or a cdn, it can actually take longer to download and upload to objectstorage then it does to just download directly from the source.

Finally, I was thinking about using it as a way clear the cache if it became corrupted. Since the controller cannot talk to object storage directly it hard to programmatically clear the cache directly. App Environmental variables are passed to builder and slug builder though, and they could automatically delete the cache if caching is disabled.
While you can hack on a buildpack to disable caching, keeping the buildpack up to date with the official one becomes a maintenance burden.

For some apps that just use the cache for dependencies it could actually be slower. If your dependencies are stored in s3 or a cdn, it can actually take longer to download and upload to objectstorage then it does to just download directly from the source.

iirc, Heroku stores them in S3 as well, right? That shouldn't be an issue.

Large files can cause problems with minio: deis/registry#62

As far as minio goes, good point, that would need some configuration.
I'll add the configuration variable and will open the appropriate PRs for the docs. Also, since the PUT_PATH contains the git-sha, I'll create a PR to the builder to add a CACHE_PATH or similar, so we can use that for other cache-related stuff.

While you can hack on a buildpack to disable caching, keeping the buildpack up to date with the official one becomes a maintenance burden.

Agreed, that would be a workaround, not a solution, adding the flag!

Great to see this being worked on. This will greatly help our Ruby application's deployment time (which is currently close to 15 minutes, due to the required downloads/installation of all the gems).
👍

@JeanMertz

One question: will this also be implemented for the dockerbuilder in some way (using volumes I guess?), or will this be a slugbuilder only feature for now?

I'll be implementing this for the slugbuilder now, but the CACHE_URL will be made available from the builder, so I guess it would also pass it to the dockerbuilder and allow you to work with it.

@JeanMertz the builder was just merged, and for now it only adds the CACHE_PATH variable for the slugbuilder. I'm not quite sure how cache would be implemented with the "Dockerfile" way, but if you have input for that I'm more than happy to help implement that too :)

Jenkins, add to whitelist.

@jeroenvisser101 did you chmod +x the new scripts you added?
If you take a look at the e2e logs, I see a lot of:
13:12:30 remote: /bin/get_object: line 3: /bin/normalize_storage: Permission denied
13:12:30 remote: 2016/08/19 20:08:03 open /var/run/secrets/deis/objectstore/creds/bucket: no such file or directory
13:12:30 remote: 2016/08/19 20:08:10 Error running git receive hook [Build pod exited with code 1, stopping build.]

Ah, no, I did chown them, will do!

Done, let's see if this passes

E2E has this error: remote: 2016/08/19 21:15:46 open /var/run/secrets/deis/objectstore/creds/bucket: no such file or directory

that would mean the env variables from the normalize_storage are in the environment during the put or get from the objectstore binary

Right, let me track that down

Yeah, makes sense. Should I export them? I guess that'd be fine?

@kmala I changed the commands to source ./normalize_storage, not super happy with that, but don't know any better way. Let's see if this works, and if you have suggestions, let me know 👍

Could you possibly add some log lines to your PR when downloading caches (cache found/not found) and when a cache is uploaded (uploading/not changed)

Could you possibly add some log lines to your PR when downloading caches (cache found/not found) and when a cache is uploaded (uploading/not changed)?

sure thing. also, will check why it's failing now

I added exceptions for ShellCheck (it complained about source not being followed), and added extra logs

Thanks for the logging. It'll make testing much easier!

Yeah, I think it's nice for later too, troubleshooting and things, also to keep track of the cache size over time

Just gave this a try with https://github.com/deis/example-ruby-sinatra.
What worked: Cache uploading and downloading!
What's not working: Cache is always detected as changed no matter what. I wonder if this is because the mtime of file always changes when packing/unpacking?
Super hyped about this!
As you can see, the ruby buildpack detects and uses cached files. Even with reuploading the cache, it was still faster then without caching.
Deploy logs:
Deploy 1:
-----> Restoring cache...
2016/08/22 21:35:02 Error downloading home/benign-quilting/cache/cache.tgz (gcs: Path not found: home/benign-quilting/cache/cache.tgz)
       No cache exists yet, running without cache.
-----> Ruby app detected
-----> Compiling Ruby/Rack
-----> Using Ruby version: ruby-2.3.1
-----> Installing dependencies using bundler 1.11.2
       Running: bundle install --without development:test --path vendor/bundle --binstubs vendor/bundle/bin -j4 --deployment
       Fetching gem metadata from http://rubygems.org/..........
       Fetching version metadata from http://rubygems.org/..
       Installing tilt 2.0.5
       Installing puma 3.6.0 with native extensions
       Installing rack 1.6.4
       Using bundler 1.11.2
       Installing rack-protection 1.5.3
       Installing sinatra 1.4.7
       Bundle complete! 2 Gemfile dependencies, 6 gems now installed.
       Gems in the groups development and test were not installed.
       Bundled gems are installed into ./vendor/bundle.
       Bundle completed (3.90s)
       Cleaning up the bundler cache.
-----> Writing config/database.yml to read from DATABASE_URL

-----> Discovering process types
       Procfile declares types -> web
       Default process types for Ruby -> rake, console, web
-----> Updating cache...
       Cache changed, uploading...
       Done: Uploaded cache (2.0M)
-----> Compiled slug size is 19M
Build complete.
Launching App...

Deploy 2:
-----> Restoring cache...
       Done!
-----> Ruby app detected
-----> Compiling Ruby/Rack
-----> Using Ruby version: ruby-2.3.1
-----> Installing dependencies using bundler 1.11.2
       Running: bundle install --without development:test --path vendor/bundle --binstubs vendor/bundle/bin -j4 --deployment
       Using puma 3.6.0
       Using rack 1.6.4
       Using tilt 2.0.5
       Using bundler 1.11.2
       Using rack-protection 1.5.3
       Using sinatra 1.4.7
       Bundle complete! 2 Gemfile dependencies, 6 gems now installed.
       Gems in the groups development and test were not installed.
       Bundled gems are installed into ./vendor/bundle.
       Bundle completed (0.27s)
       Cleaning up the bundler cache.
-----> Writing config/database.yml to read from DATABASE_URL

-----> Discovering process types
       Procfile declares types -> web
       Default process types for Ruby -> rake, console, web
-----> Updating cache...
       Cache changed, uploading...
       Done: Uploaded cache (2.0M)
-----> Compiled slug size is 19M
Build complete.

Just following up to say the difference in the md5 was due to the file mtime in the tarball. You can do almost exactly the same thing though with md5deep with the folder:

run md5deep on extracted tarball and pipe output to file
use the file for input when running md5deep again.

@Joshua-Anderson I was wondering what the best way would be to install md5deep in the slugbuilder. Any input on that?

@jeroenvisser101 It's in the ubuntu package archive, so you can just apt-get update and apt-get install md5deep, like in this example

Ah, yeah, but it's not the latest version. Also, I wanted to avoid doing apt-get update since it's quite slow, but maybe that's no big deal?

@jeroenvisser101 It isn't the latest version, but IDK how important that is. It's a little slow, but docker caches layers, so if it's placed in the right place it's only slow once.

Thanks for the contribution! Please ensure your commits follow our style guide. This code will be tested once a Deis maintainer reviews it.

I tested this manually and it all seems to work :+1:

Squashed and changed messaging a bit, should all be green still.

E2E doesn't seem to be updating the commit status properly, however, I manually tested it again after that latest changes:
I see /bin/restore_cache: line 7: /var/log/objstorage.log: Permission denied in the log. I don't think the slugbuilder is running as root so it probably can't write the log there.

I don't think the slugbuilder is running as root so it probably can't write the log there.

Indeed it is not.

@bacongobbler @Joshua-Anderson ah, cool. Should I persist them somewhere else or just dump them to /dev/null for now?

@jeroenvisser101 What about /tmp/objstorage.log or something like that. It's unlikely that objstore will fail there, but if it does it would be nice to be able to get the logs somehow.

For sure, will update it now.

@Joshua-Anderson I updated it, let's see if Jenkins approves.

Jenkins approved, and I added the optional toggle to disable it!

Jenkins approved

Not quite, our subsequent e2e job isn't updating the commit status of this build. I belive @vdice is investigating why this is happening.

@Joshua-Anderson ah, to bad, I was just celebrating with some 🍺

Apologies for the confusion/false positives @jeroenvisser101 @Joshua-Anderson -- I'm still confused on what prevented the e2e job from reporting back... I'll keep looking but in the meantime I just kicked off the ci pipeline manually with the latest commit sha representing this change, so the e2e job will now report back when finished.

@vdice no problem! Thanks for issuing it manually

I just tested the with the example-ruby-sinatra app and everything works great 🎉.
I tested

no cache -> cache-upload
no-cache changes
dependency downgrades
cache disabled with DEIS_DISABLE_CACHE=1 in deis/builder#42

I've also used this with the example-scala app and it dropped build times from ~10 minutes in the initial deploy to ~2 minutes!
Thanks for all your hard work!

Thanks for testing this so many times @Joshua-Anderson, great everything now works as it was meant to work!

Would you mind adding the new shell scripts to this line so they're checked via shellcheck? That would be very appreciated. Thanks!

@bacongobbler for sure, did that just now :)

@vdice could you issue e2e manually once more?

the ci passed https://ci.deis.io/job/workflow-test-pr/6211/console


Refactoring Charts

refactor and update the Depth Chart and Candlestick charts to be more responsive like the updated price history chart is.

For Mega templates it's missing the possibility to switch between markets. On the design is like this:

It has a dropdown to switch between moneyline, o/u, etc...

Figma reference to components:
https://www.figma.com/file/42QoTLQcbObu7esoTPjWRv/Augur-Bet-Design-System?node-id=185%3A0
On small breakpoints, the design contemplated including the references below the chart. On the build is on the side. Is it possible to update it?

Oh yeah, I didn't touch those, this was more setup for eventual updates for these types of things. I was planning on a different ticket for that.

Can we increase this distance? Make it 16px instead of 8px like it is now. Because seems too close.

For Mega templates it's missing the possibility to switch between markets. On the design is like this:


Adjacent tiles not rendering when zoomed in

Hello!
I am a member of a company that is a large client to ArcGIS. I am currently experiencing what seems to be a bug. When zooming into a rendered map to a high degree, the center tile in view remains rendered. However, when panning away from the currently rendered tile, the adjacent tiles do not render. Additionally, the sole rendered tile disappears once panning off of it, leaving the entire map grey. Our map needs to zoom in to a high degree (even if the map does not have tiles to render) and be able to pan while allowing adjacent tiles to render. After making a hard coded "safe zoom" level for our application that allows adjacent tiles to render while panning, our clients have came back and reported this to be unacceptable. Is there any way to fix this bug? Finally, I have looked at other examples of implementation of ArcGIS and see similar problems where developers have made finicky, hacky fixes. Helping us solve this problem would likely be of benefit to many other developers as well!
Attached are some photos for reference of what I am speaking of:

Thanks in advance for any help.

@blakeedwards823 this isn't the best place to post this kind of question.  This is a repository used for the JavaFX toolkit.
You should put your post into one of our GetNet forums.  If you tell me a little more about the product you are using then I can point you in the right place.

What product are you using to develop your app?  Is it a native Runtime application was for Java, Android, iOS, .Net etc?  Or are you writing a web application using Java Script?

Next what version of the product are you using?

Let me know and I'll point you in the right direction.

Hi Mark,
Thank you for the fast response. I'd be happy to copy and move my question
to another, more appropriate, forum. We are using the ArcGIS library to
render maps on an Android device for tactical navigation purposes. This is
the version we are using from our Gradle
dependencies: com.esri.arcgis.android:arcgis-android:10.2.8-1. Please let
me know as soon as you can where to post this question. Thank you.
Best regards,
Blake Edwards
On Tue, Jun 18, 2019 at 9:38 AM Mark Baird<EMAIL_ADDRESS>wrote:

@blakeedwards823 https://github.com/blakeedwards823 this isn't the best
place to post this kind of question. This is a repository used for the
JavaFX toolkit.
You should put your post into one of our GetNet forums. If you tell me a
little more about the product you are using then I can point you in the
right place.

What product are you using to develop your app? Is it a native Runtime
application was for Java, Android, iOS, .Net etc? Or are you writing a web
application using Java Script?
Next what version of the product are you using?
Let me know and I'll point you in the right direction.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/Esri/arcgis-runtime-toolkit-java/issues/22?email_source=notifications&email_token=ALZAJME2BUDLH7L5KPMODY3P3DQOLA5CNFSM4HY75MBKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODX6UYBQ#issuecomment-503139334,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ALZAJMFGV5LOSKOT3WH4LDDP3DQOLANCNFSM4HY75MBA
.

Blake,
The forum page for the ArcGIS Runtime SDK for Android is here https://community.esri.com/community/developers/native-app-developers/arcgis-runtime-sdk-for-android
I actually work on that team so may end up looking at this.
One observation is that you are using a very old version of the SDK which is no longer supported.  The latest version of the product is 100.5 - you may have more luck with the latest version.
Take a look at https://developers.arcgis.com/android/latest/guide/guide.htm
I'll close this issue for the moment.
Mark

Hi Mark,
I have posted my issue here and this issue can be removed or closed here on
Github. Thanks again for your help.
On Tue, Jun 18, 2019 at 9:54 AM Mark Baird<EMAIL_ADDRESS>wrote:

Blake,
The forum page for the ArcGIS Runtime SDK for Android is here
https://community.esri.com/community/developers/native-app-developers/arcgis-runtime-sdk-for-android
I actually work on that team so may end up looking at this.
One observation is that you are using a very old version of the SDK which
is no longer supported. The latest version of the product is 100.5 - you
may have more luck with the latest version.
Take a look at
https://developers.arcgis.com/android/latest/guide/guide.htm
I'll close this issue for the moment.
Mark
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/Esri/arcgis-runtime-toolkit-java/issues/22?email_source=notifications&email_token=ALZAJMCKQUUW5FGWNKQKLP3P3DSJFA5CNFSM4HY75MBKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODX6WLEA#issuecomment-503145872,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ALZAJMETC6IJSM3FIJTRNP3P3DSJFANCNFSM4HY75MBA
.


Video Chat not working

{ disconnect: [ [Function], [Function] ], jid: { _domain: Possible Unhandled Promise Rejection (id: 1): TypeError: undefined is not an object (evaluating 'b.enumerateDevices')
facing this issue

Hi, @jaikantshikray
Whats steps to reproduce? Does the error present in our samples?

Since there is no activity I’m going to close the issue. Please raise a separate issue in case of any other questions.


[main] sync main branch with upstream opendatahub main branch

[main] sync main branch with upstream opendatahub main branch
Fixes: #244

/approve
Merging to get the build ready


[Bug]: PVC Size wrong when not explicitely specified on ODH Dashboard Config, pending PVC

Is there an existing issue for this?

[X] I have searched the existing issues

Current Behavior
@DaoDaoNoCode
The PVC Size Default in odh dashboard code is set to 20 in both backend and frontend code.
It should be taken from a default entry in odh dashboard config and not be set to a value explicitely in all sorts of places frontend and backend. There is always an auto-generated odh dashboard config, and pvc size is non-optional.
https://github.com/search?q=repo%3Aopendatahub-io%2Fodh-dashboard DEFAULT_PVC_SIZE&type=code
The error with number 20 leads to a PVC being pending forever, with event message saying "20 bytes is not a valid size"
Default should be set to 20Gi.
This is only happening if no other value is speficied in OdhDashboardConfig odh-dashboard-config at notebook controller level. Also, I specified a storageclassname as there is no default storage class. That part worked well.
Good: Code for setting or changing the value via Settings - Cluster Settings - PVC Size and thereby setting pvcSize entry in odh dashboard config CR works correctly (the number is in there plus Gi postfix).
Since you set default PVC size in code, think about delivering that entry by default in delivered odh-dashboard-config and not relying on DEFAULT_PVC_SIZE anymore, unless that is necessary for local development.
That is, when auto-generating from dashboard code in case there is no odh dashboard config CR present yet.
i.e.
notebookController
     notebookController: {
      enabled: true,
      pvcSize: 20Gi,
    },`

https://github.com/opendatahub-io/odh-dashboard/blob/73dc3ba5b1cc71fd852f0beeb8a85aa56ff438ce/backend/src/utils/constants.ts#L58
If you were to put it in here, you could remove it from backend and frontend code, having the default more centrally.
Expected Behavior
PVC should bind with correct size and without errors even when no setting is specified at
notebookcontroller.pvcsize in odh dashboard config, as is the default.
Steps To Reproduce
No response
Workaround (if any)
No response
What browsers are you seeing the problem on?
No response
Open Data Hub Version
No response
Anything else
No response

Yes, I think the same could be said for MIN_PVC_SIZE and MAX_PVS_SIZE. You do not seem to use them currently, but they do not have Gi postfix either.

we have another issue with storageClassName not set when done from frontend code / Data science projects workbench creation perspective, should be easy to fix
opendatahub-io/odh-manifests#840

FWIW, this is unrelated. I'm sorry I'm being a broken record following you around tickets, but it's for posterity for the individual who picks up the issue.

agreed, only loosely-connected in that it relates to storageclasses.

this error only occurred in jupyter tile / backend as I tested without a set entry in OdhDashboardConfig


Ordered Job by creation time.

Signed-off-by: Da K. Ma<EMAIL_ADDRESS>Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #454
Release note:
None

/lgtm


useTokenPagination

Looks like useTokenPagination hasn't been updated to match the new interface.

Indeed. It's also undocumented and pretty experimental. I've been visiting it with new ideas here and there, but I don't think it's ready for prime time yet.

I had to fork an early version to get it doing what I needed - but the token style iteration seems very backend specific.

I would love any feedback or ideas you have for it. Yes I agree, it's pretty specific to something like apollo and graphql vs general token pagination.

I'd really love an example of how to perform token pagination with something like graphql.  Is useTokenPagination intended to be used in conjunction with the standard usePagination?  It seems like it just exposes some utility helpers, and doesn't really hook into react-table at all...


Add link arrow to external links

https://www.whitehouse.gov/ceq/news-updates/2021/12/02/delivering-on-justice40/

@KameronKerger will note in living copy which links are external so @vim-usds can use the correct link type (part of USWDS)
[href^=http]:not([href*="designsystem.digital.gov"])::after {
background: 0 0;
background-color: currentColor;
-webkit-mask: url(../img/usa-icons/launch.svg) no-repeat center/1.75ex 1.75ex;
mask: url(../img/usa-icons/launch.svg) no-repeat center/1.75ex 1.75ex;

external links now noted in living copy doc


Add Rust docs for stable interfaces and structs

Start adding rust docs (doc strings, with examples how to use / which fields there are / what they are for) for the parts of the codebase, which can be considered somewhat stable.

is this something that is open for contribution.
i can start submitting small PR regard  this.
this way i can understand the codebase and ease myself regarding contributing to code.  @zupzup

@mubarak23 Yes, this one would be a perfect candidate :+1:
I think the best approach would be to tackle one part of the code base after another and in the process of understanding it, add some (non-verbose and clear) documentation.

@mubarak23 Yes, this one would be a perfect candidate 👍
I think the best approach would be to tackle one part of the code base after another and in the process of understanding it, add some (non-verbose and clear) documentation.

absolutely,
kindly assign this issue to me.

Done and moved to in progress :+1: feel free to ping me for help any time :v:

Hey @mubarak23 did you have a chance to get started on this one?

some of functions don't have unit test at the moment @mtbitcr @zupzup is unit test not a priority at the moment

Unfortunately, a lot of them don't have tests currently, but it's something we're working on improving. We managed to get test-coverage from around 0% to ~17% within the last weeks and are continuing on this path. :relaxed:

some of functions don't have unit test at the moment @mtbitcr @zupzup is unit test not a priority at the moment

Unfortunately, a lot of them don't have tests currently, but it's something we're working on improving. We managed to get test-coverage from around 0% to ~17% within the last weeks and are continuing on this path. ☺

awesome, if am able to closed this Issue,
i will jump on the unit test side,

Hey @mubarak23. I checked PR. Looks nice! Do you want to continue documenting the rest of the system, or do you want to start writing unit tests after PR merged?

Yes, i will continue documenting the rest of the system.
this way i can get a better understanding of how the system works

Hey, @mubarak23, please always link branches to tasks.

i will pick up and continue with dht module

Thanks!


FAR IProgress Implementation

Adds support for progress notifications to be consumed by the LSPProgressListener (thanks @NTaylorMullen!)
FAR subscribes to these progress notifications sent by Roslyn.

https://microsoft.github.io/language-server-protocol/specifications/specification-current/#progress
Fixes: https://github.com/dotnet/aspnetcore/issues/22436
Quick results with few references

Gradual results with progress notifications

Love how clean it is now. Just had a few extra comments on how to clean it up further. Really happy to see this come together though 👏

Updated with final tests!


Do not depend on tools in system-/user-wide paths (or install tools into those)

Description
This is a long-standing pet peeve of mine: most of the Go-based tools that we use (golangci-lint, mockgen etc.) are installed in system-wide or user-wide paths, e.g., the default $GOBIN (which is $HOME/go/bin). With other projects having a similar annoying behavior, this in the best case leads to frequent rebuilds of tools with changing versions, and in the worst case causes code to be generated with incorrect or even inconsistent versions of tools, causing unstable behavior (that is hopefully caught in CI via the generated files up-to-date check).
It doesn't need to be this way. This PR changes things in such a way that (a) Go tools are installed in a project-specific location (.gotools/bin) and (b) sets up Makefile rules to ensure that tools are always rebuilt when necessary (version bump, code change), but - in most cases - not rebuilt more often than necessary. Note that the last point is not a strict requirement, because go install already caches most of its work, so running go install repeatedly is really fast (~0.2s on my machine). However, that's still worse than 0s, which is why whenever we can easily prevent rebuilds by correct formulation of Makefile targets, we will.
The functionality is exposed via a reusable macro invoked via $(call go-tool, ...). Please refer to the documentation of that for further details.
This PR affects just the tools referenced in the top-level Makefile. For tools used in protogen.mk, the situation is already different; I plan to unify things in a follow-up PR and use $(call go-tool, ...) in protogen.mk as well.
Checklist

[x] Investigated and inspected CI test results
[x] ~Unit test and regression tests added~
[x] ~Evaluated and added CHANGELOG entry if required~
[x] ~Determined and documented upgrade steps~
[x] ~Documented user facing changes (create PR based on openshift/openshift-docs and merge into rhacs-docs)~

If any of these don't apply, please comment below.
Testing Performed

Local testing with make reinstall-dev-tools and the individual targets
CI
[ ] needs status check: Downstream testing with this commit at https://gitlab.cee.redhat.com/stackrox/rhacs-midstream/-/merge_requests/285

Do you have plans to also use this in operator/Makefile?

Do you have plans to also use this in operator/Makefile?

Possibly. There are some trade-offs to consider, the main one being that we diverge further from the operator-sdk scaffolding's Makefile. And I have to see how well the rather idiosyncratic way of installing tools (which is however necessary due to the usage of replace directives in the respective go.mod files). We could solve that by just having the versions listed in a operator/tools/go.mod file, but this would only increase the divergence.

I have taken the which-<binary> approach and used that in mockgen-wrapper. I have realized though that sometimes we call tools directly in go:generate without a wrapper script, so I will send out a companion change to github.com/stackrox/workflow to add <project root>/.gotools/bin to the PATH when running gogen.
Since everyone has approved, I have made no changes that should come as a surprise, and CI is passing, I will merge this in the course of today.


Fix findIntersection documentation

Thanks a lot for making a contribution to SFML! 🙂
Before you create the pull request, we ask you to check the follow boxes. (For small changes not everything needs to ticked, but the more the better!)

[ ] Has this change been discussed on the forum or in an issue before?
[x] Does the code follow the SFML Code Style Guide?
[ ] Have you provided some example/test code for your changes?
[ ] If you have additional steps which need to be performed list them as tasks!

Description
Fixed documentation oversight from #1952
Tasks

[ ] Tested on Linux
[ ] Tested on Windows
[x] Tested on macOS
[ ] Tested on iOS
[ ] Tested on Android

SFMLBuildMaster: Build this please.


melonDS: 0.8.3 -> 0.9 (and build fix)

Motivation for this change
https://hydra.nixos.org/build/131268796
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[x] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

It runs fine but I don't use it and don't really know if it actually works fine.
@artemist
@benley

Oh, just realize we should probably remove wrapGappsHook now.


fix: hydration __vnode missing

In the basic renderer, we inject __vnode on dev for devtools to grab it. We missing that information in SSR as we didn't do so in hydration.
https://github.com/vuejs/core/blob/a6ae876c54cc218479b8ff3bc09b59070d9b72a6/packages/runtime-core/src/renderer.ts#L689-L698

@antfu can you add a test pls

@antfu can you add a test pls

I'd love to, but we didn't even have any tests for devtools. It might be better to delegate that to another PR.


lottie/slot: can't target multiple properties with a slot

Main Scene.json

@theashraf the fix will be in v0.15.5 thanks.


Fix drawer when using Turbo by adding an extra check when removing drawer backdrop

This fixes the issue of the drawer breaking when using turbo:

Appears to duplicate #665 ... but considering there are (from a quick perusal) at least two PRs adding this check, seems likely that one of them should be accepted. Plus looking at it, it just kinda makes sense to me :shrug:

@sdhull Thanks for chipping in. I didn't notice the other MR, as from what I observed the issue is specific to using the Turbo library for me. If I deactivate it, all seems to be working fine.
Also, although both checks are related to the backdrops, they are in different places, from my side the check is when destroying the backdrop, but on #665 is when creating. The problem I encountered wasn't that an element was duplicated, but rather that there was no element found when destroying the backdrop, when using Turbo.


No of deletions

issue : #220
This program counts the number of characters to be deleted to make the string pallindromicsubstring.
This is done using python.

@Amit366 you need to do it soon, otherwise we will be closing the PR.

@tarun26091999 I didn't get any mail regarding this corrections. I got the mail now so I will do it tomorrow.

@plazzy99 please review now

Please resolve the conflict

@plazzy99 till yesterday there wasn't any conflict

@plazzy99 it's been 6 days please tell me what to write in readme..

go through the guidelines.

@tarun26091999 check it now.I have updated it

@tarun26091999 add the labels


Problem updating from 1.3.0 to 1.5.2 (EngineSettings must have Filename or DataStream as data source)

Hey, thanks for an awesome plugin. I am trying to update from version 1.3.0 to 1.5.2 with LiteDB. I have set Barrel.Update = true right after setting the ApplicationId. No encryption is used.
When accessing barrel with Barrel.Current I am getting the following error:
EngineSettings must have Filename or DataStream as data source
at LiteDB.Engine.EngineSettings.CreateDataFactory () [0x0008d] in <e37eae51170e472a88b7e61cb2c985c3>:0
at LiteDB.Engine.DiskService..ctor (LiteDB.Engine.EngineSettings settings, System.Int32[] memorySegmentSizes) [0x00012] in <e37eae51170e472a88b7e61cb2c985c3>:0
at LiteDB.Engine.LiteEngine..ctor (LiteDB.Engine.EngineSettings settings) [0x00173] in <e37eae51170e472a88b7e61cb2c985c3>:0
at LiteDB.ConnectionString.CreateEngine () [0x0004a] in <e37eae51170e472a88b7e61cb2c985c3>:0
at LiteDB.LiteDatabase..ctor (LiteDB.ConnectionString connectionString, LiteDB.BsonMapper mapper) [0x00034] in <e37eae51170e472a88b7e61cb2c985c3>:0
at LiteDB.LiteDatabase..ctor (System.String connectionString, LiteDB.BsonMapper mapper) [0x00007] in <e37eae51170e472a88b7e61cb2c985c3>:0
at MonkeyCache.LiteDB.Barrel..ctor (System.String cacheDirectory) [0x0006c] in D:\a\1\s\src\MonkeyCache.LiteDB\Barrel.cs:71
at MonkeyCache.LiteDB.Barrel.get_Current () [0x00000] in D:\a\1\s\src\MonkeyCache.LiteDB\Barrel.cs:35

Any clues?
Thanks

See: https://github.com/jamesmontemagno/monkey-cache#litedb-upgrade-4---5--nuget-13---15
There was a major change in Litedb that needs a migration

Yes, like I wrote, I already tried setting Barrel.Update = true. Maybe I am missing something here? Do I need to do something else?

Missed that in the original posting.
Hmmmm looking through https://github.com/mbdavid/LiteDB/issues/1428 but not 100% sure

I am goign to try upgrading a few things to the latest and greatest and see if that has any impact

Can you try out 1.6.0-beta and see if that works for you at all.

I can no longer set the Barrel.Update flag in the 1.6.0-beta version. Hence getting the old File is not a valid LiteDB database format or contains a invalid password. error message. Was the property removed?
I will investigate a bit further later on.

Hmmmmm it shouldn't have been... let me check...

Whoops yeah forgot to merge the old one. try 1.6.1 when it is out soon here

Ok, tried now but unfortunately the same error persists. Tried it on two devices. When I go back to 1.3 it works fine..
Thanks for your effort, I appreciate it. I will investigate a bit myself later on and write here if I find anything.
Greetings from Sweden :)

Gotcha, yeah I will check the litedb github as well...
If you set a different application id does it work (aka create a new cache)? that may be the easier route to go. The idea always is that it was a cache and you can clear it out when needed

I figured it out! Let me boot up 1.6.2 :)

Works! Thanks for your quick response to this.

Whoop whoop! yeah I forgot to format the non-encrypted file name lol. I'll push to production


Minor bug in s3file.go causes unnecessary requests to s3

In s3file.go, on line 574, we have
	if newPosition == f.position {
		req.ch <- response{off: f.position}
	}

and it looks like the intended code was supposed to have a return statement like this:
	if newPosition == f.position {
		req.ch <- response{off: f.position}
		return
	}

Yes, you are right. Thanks for pointing out.


ensure initial_shrink still gets applied. together with pr83, this

ensures the initial timestep is computed as expected.

@ajnonaka This catches an oversight in pr83.


Create LICENSE.txt

Create an MIT license file!

Thanks, but I’ve already added it 🙂
https://github.com/anycable/anycable-client/blob/master/MIT-LICENSE

@palkan Oh, thanks! I must've missed it when I searched for it today!


Update IDP API architecture

The main goal of this PR is to separate the HTML as much as possible from the IDP API, and also make sure the API architecture becomes more easily extensible. There are quite a few relevant considerations there, some of them caused by OIDC behaviour, so this is going to be a long description. I tried to cover most of them here but let me know if something is missing.
The HTML in this PR should be seen mostly as a proof of concept of what can be done, but the quality there can (and should) still be improved by a lot.
All this is also preparation for #972
Architecture overview
This is an overview of both the current architecture and the new architecture. I will only cover the points where this PR makes changes. The current architecture is only there so a comparison can be made between the two.
Current
IdentityProviderHttpHandler

has list of InteractionRoutes
finds matching route by iterating over routes and calling supportsPath function
gets result by calling matching route
can receive "complete", "error", or "response" object
sends "complete" results to the InteractionCompleter
sends "error" results to the ErrorHandler to receive JSON results and handles them as "response" objects
for "response" objects: add controls and send them to converter to potentially convert to HTML

InteractionRoute

stores route, prompt, handler, GET template, POST response template, control field
getControls returns control field
supportsPath matches prompt if needed, or matches route
handleOperation returns template as response for GET requests. Calls handler for POST requests. Catches errors so "error" result can be returned in those cases.

InteractionHandler

input: Operation + Interaction
output: { type: "response"/"complete"/"error", details: any }
these handle the login/registration/etc. operation

IdentityProviderHttpHandler and InteractionRoute were made with the idea that these were temporary classes that had some ugly code to tie everything together until a more extensive change could be made (which is what this PR is). The main issues there is that they do a lot, making it hard to change things. A lot of work is also done to render pretty HTML which is a responsibility that can be offloaded to the actual HTML files.
New
IdentityProviderHttpHandler

calls InteractionHandler
outputs resulting Representation as ResponseDescription

InteractionHandler

input: Operation + Interaction
output: Representation

Actual InteractionHandler:

WaterfallHandler

HtmlViewHandler
ControlHandler

WaterfallHandler

InteractionRoute

LoginHandler

InteractionRoute

PromptHandler

etc.

InteractionRoute

interface with 1 function: getPath
used by other classes that need to reference the path of an IDP component. E.g. the ForgotPasswordHandler takes the ResetPasswordRoute so it knows which URL to send in the mail.

HtmlViewHandler

takes as input a map of templates tied to InteractionRoutes
outputs the rendered template if there is a match for the path and HTML is more preferred than JSON

ControlHandler

takes as input a map of control names (e.g. "login") tied to InteractionRoutes
adds the "controls" field to the output of the wrapped handler

Originally I wanted to completely remove all HTML references from the IDP components and only have a JSON API, but that would complicate certain behaviour. OIDC needs an HTML component (since user interaction is required) and the fact that the HTML pages have the same URL as the JSON API controls make it easier to reference other pages. Having the same URL is also relevant for the Interaction cookie, more on that below.
HTML pages
All the HTML pages have been rewritten to use JS code for submitting the forms using a fetch call. In case of errors JS is also used to edit the HTML page to add it visually. This differs from before where the server had to send back an entirely newly rendered page containing that error. This also makes it so the form data always stays filled in without needing extra code for that.
In case of successful API calls, the page gets redirected to a relative response/ (e.g., /idp/register/response/) with the response values being added as query parameters so a correct response can be rendered there. Currently the /response/ part is hardcoded in the HTML. Another option is to edit the HTML in place so we don't need another page. This is currently what is done on the setup page since it is no longer possible to access the setup page after success.
The JS for all this is also embedded in all the pages right now. We probably want a separate JS file with utility functions for all this.
Redirects
Since the HTML pages now do fetch calls to the API I had to change how redirects work in the IDP. Take the login page as an example. In case of an error when submitting data, this error needs to be displayed on the page, in case of success, the user should be redirected back to the client initiating the OIDC interaction. This creates issues when doing a fetch call in the JS of the page. On error, the fetch response will be a JSON object containing the error description. On success, the fetch will be redirected to the client URL, causing the fetch to return the HTML at that client URL location! Or a CORS error in case that URL has a different host. We want neither of those.
Instead of getting the HTML of that redirect result, we want to have the actual redirect URL so we can redirect the page there. Because of this all API calls that would do a redirect, now instead return a JSON object containing a location field. This is the URL to which the browser should be redirected. So then the JS code can always do a fetch. In case of an error it updates the HTML page and in case of success it uses that location field to trigger a redirect.
Prompts and cookies
During the OIDC interaction, at some point the user gets redirected to a specific page where their input is required. In our implementation (both current and new) this URL is fixed to /idp/. In the current implementation you would get the HTML back that belongs to the login page (or confirmation page). In the new version /idp/ returns an empty HTML page. This page does a GET call to /idp/prompt/ which returns /idp/login/ (or /idp/confirm) after which the page gets redirected there.
One important reason that the original redirect has to be to /idp/ is that the OIDC library sets a cookie for that URL. This is the cookie that is used to generate the Interaction object that contains all the relevant information about this login session. This is also what we use on the registration response page to either add a link to the login page or not, depending on if we are in such a session.
The OIDC library allows us to dynamically generate this URL though. So instead of doing the calls above, we could call the PromptHandler directly through the OIDC library callback and immediately redirect to /idp/login/. The problem here is that the cookie is then also set for that URL, meaning the registration page can no longer see if we are in a login session or not.
We could always put the login link on that page, but then we are going to run into the problem we had previously where many people reported the login page not working. Writing this out makes me realize that we could change the login page depending on if we are in an active session or not though.
It is not relevant right now, but perhaps in the future it might be relevant that the scope of this cookie is not the entire API?
Minor extra remarks
Integration tests now partially use JSON. We might have to switch fully to JSON at some point and have separate tests for the HTML pages.
The DynamicJsonToTemplateConverter can be completely removed since it was only used for setup and IDP.
Some things can be made even more generic. For example the HtmlViewHandler could take type as input instead of being fixed on HTML. But I don't think we really want other view handlers. HTML is just a special case for OIDC, if we want other representations they should use a converter on the JSON output.
The ResetPasswordHandler now uses an URL query parameter (which it did originally and I changed later) again, since it is now easier to handle due to the JS we use in the HTML.
Not sure if this is going to break the conformance tests. I actually think not since we still accept form data but this is untested.
Doing a GET on an IDP API returns a JSON object describing the expected parameters since I didn't really know what else to return there.
I didn't do it yet, but this would also be a good PR to change /idp/ to /.accounts/ as mentioned here https://github.com/solid/community-server/pull/1054#pullrequestreview-820694805
In practice nothing really changed for the end user :D

All the HTML pages have been rewritten to use JS code for submitting the forms using a fetch call. In case of errors JS is also used to edit the HTML page to add it visually. This differs from before where the server had to send back an entirely newly rendered page containing that error. This also makes it so the form data always stays filled in without needing extra code for that.

So we now depend on browser-side JS code for this to work, i.e., no progressive enhancement?
Could you detail why this route was chosen?

In case of successful API calls, the page gets redirected to a relative response/ (e.g., /idp/register/response/) with the response values being added as query parameters so a correct response can be rendered there. Currently the /response/ part is hardcoded in the HTML. Another option is to edit the HTML in place so we don't need another page. This is currently what is done on the setup page since it is no longer possible to access the setup page after success.

We might indeed want to avoid that (depending on the answer above).

The JS for all this is also embedded in all the pages right now. We probably want a separate JS file with utility functions for all this.

Most definitely, also linting etc., option to test, reuse.

I didn't do it yet, but this would also be a good PR to change /idp/ to /.accounts/ as mentioned here #1054 (review)

Oh yes!

So we now depend on browser-side JS code for this to work, i.e., no progressive enhancement? Could you detail why this route was chosen?

I actually had to spend some time to reconstruct my own argument here since it's been a while since :smile:. This is also a subjective part so you might reach a different conclusion.
One big issue with the HTML part of the IDP is that there are 3 possible request/response combinations:

GET always returns the view page
POST returns the response page in case of success
POST returns the view page in case of an error

In the old implementation this was solved by checking the method and catching errors in the entrypoint IDP handler. Based on that the correct template reference was put in the response metadata object after which the converter was called. In case HTML was preferred the DynamicJsonToTemplateConverter would take that metadata to generate the correct HTML based on the JSON response body and the template in the metadata.
Some problems with that solution is that this mixes the HTML logic with much of the other logic which requires a bunch of exceptions. The fact that we have to catch errors there is annoying for example since that means we can't make use of the standard behaviour of letting errors fall through to the ErrorHandler. Having to add the correct template file path to the response metadata also doesn't feel great.
If the HTML page itself is responsible for doing the call we shift the responsibility of how to view the error to, well, the view. It makes the IDP API a bit more API-like in the sense that it can now just throw an error in case of issues.
This is then the behaviour in the suggested solution:

GET always returns the view page
POST always returns a JSON response (error or actual response)
The difference is that there are 2 different pages to GET in cases where we would now have 1. The other solution would be to only have 1 page and have that page edit itself to show the response on success. But that was more complex frontend HTML/JS which is why it currently is like it is, because the HTML source still needs updating anyway.

Okay, fair enough. Then we basically have an HTML app operating the JSON API. That works.

I still find the location hack a bit icky.

Always open to suggestions 😄 . But I couldn't find a better solution due to the reasons described above.

I think we'll need to clean up the client-side JS to make it more maintainable. It's fine as it is now, but any further changes could jeopardize quality.

I agree, this part of the PR is still sort of in draft in my opinion and will need to be cleaned up before merging.

@RubenVerborgh mostly requesting re-review for the HTML changes, but here is the full changelist since the previous version:

Remove GET/POST requirement everywhere except BaseInteractionHandler.
Redirect errors get thrown again.

There is a new handler that intercepts these errors and returns a JSON response with the location field instead. This way only 1 class needs to be changed if we want to change this.

Fully updated HTML with utility scripts.
OIDC library dynamically redirects by calling prompt handler

No weird index html page needed anymore.
HtmlViewHandler now also gives authenticating parameter to pages.
This was actually a bug in the previous version as otherwise the registration page could not link to the login page correctly.  Due to the impact the prompt handler change has on the interaction cookie, the registration result page now always links to the login page, but the login page will prevent logging in if there is no interaction.


spec: should a default value be specified for readOnly?

This is so pedantic I'm not even sure it's worth raising, but the spec currently reads: "readOnly (boolean, optional if kind is "host")". Is it worth stipulating that a default of false applies when readOnly is not present?

Since we stipulate this for the optional boolean mountPoints.readOnly in the Image Manifest schema, we should do this for the other optional booleans too: ports.socketActivated and volumes.readOnly (the one you mentioned). Any chance you could put together a patch making these three consistent? Thanks!

:+1: lgtm, thank you sir


Racing condition causing Cross-Data usage and content leakage in page rendering

Issue
After receiving a customer reporting they were seeing someone else's data in our application, we went out to investigate and boiled down to a bug in fresh, specifically related to context render function. It's not hard to reproduce:
If you have a dynamic route like /admin/[site]/index.tsx and receive a lot of requests with different site some requests will show incompatible data. We suspect there is something to do with islands.
How to reproduce:

Fork https://github.com/igorbrasileiro/fresh_render_concurrency.
install k6 (brew Install k6).
Run deno task start.
Run k6 run script.js & k6 run script_2.js &.
Open the browser in http://localhost:8000/admin/demo and wait to see fashion being rendered, when the correct value would be demo.

// routes/admin/[site]/index.ts
import Counter from "../../../islands/Counter.tsx";

export const handler = (req, ctx) => ctx.render({ site: ctx.params.site });

export default function Component(props) {
  const {
    data,
    url: { search },
  } = props;

  return <Counter site={data.site} />;
}

Versions
fresh 1.3.1
deno 1.36.1
v8 <IP_ADDRESS>
typescript 5.1.6

Cc: @marvinhagemeister

Can reproduce it on my end and I know where the issue is coming from. Will fix it tomorrow as it's 1AM here.

Thanks @marvinhagemeister !! Thanks for the detailed report @igorbrasileiro

Fix is ready and awaiting review. We had planned to cut a new release later today anyway. So the fix should roll out pretty soon.

Just published the release which includes the fix for this issue https://github.com/denoland/fresh/releases/tag/1.4.0


Run linter on all files in a workspace, even the unopened ones

Environment data

VS Code version: 1.30.1
Extension version (available under the Extensions sidebar): 2018.12.1
OS and version: Windows_NT x64 10.0.17134
Python version (& distribution if applicable, e.g. Anaconda): 3.7 with Anaconda
Type of virtual environment used (N/A | venv | virtualenv | conda | ...): conda

Feature
Add an option to run linting on entire workspace and populate problems for all files in the workspace. Currently, there is a "Run Linting option" which only works on a file-by-file basis. I propose adding a new option titled something like "Run Linting on Entire Workspace".
Note: Yes, this feature can be done by using the command line to call the script but the command-line arguments and settings in the User Settings can be tedious to copy/paste into the terminal.

Duplicate of #82

Unlocking to see if this gets any upvotes over the next 28 days.

And now I have properly unlocked this issue. :)

I'd love to see a feature like this. My workflow:

test driven development. Sometimes taking a package over from others authors
I use pyright and flake8 to try to keep my code "clean"
When I make type hint changes, I don't always remember all the places the method is used in the package source
Having this feature would mean once I've made a change, files that the method is used in but aren't open would light up as having a potential problem if the new type hints are going to cause a problem.

Actually, I'd be comfortable with having a command that was explicitly invoked and whose outputs were scanned. I suppose a task could be created for this as well. And then this "task" could be run either automatically or when I wanted.
There are currently so many linter's and type checkers in the python module. Perhaps another option that would satisfy this was if there was a macro similar to "run all linters on flie X" then someone could write a macro which scans the workspace and runs the linters. Or I could pass in a directory and it would run on all files that match its pattern's, etc.
But it boils down to: I want to "run a compiler" over all my code to see errors in files I've not yet opened before I do a check-in.

@gordonwatts it sounds like you specifically want mypy to run across all your files, which is subtly different than any and all linters across all files and is being covered specifically by #1577. Otherwise do you specifically care some file you're not editing happens to not meet flake8 requirements?

@brettcannon thanks for the pointer to the mypy daemon. I'll have to try that out.
Yes - I do specifically care that some file I'm not editing does not meet flake8 requirements. This is because I'm dealing with a large repo and I'm not always the one that is checking in the files. Even though flake8 is part of CI, others sometimes do not check their files before checking in. Having errors for all files appear in the Problem window makes it very easy to navigate to the errors.
I suppose I could create tasks for myself. However, this infrastructure must already exist in vscode, so it seems like it is an easy extension.

When you are writing python code for a Spark job, it's really annoying to go through a full deploy through Ansible, copy out to HDFS and provision a Spark job to find out that when you changed a signature it broke things in files that weren't open.  I have jobs with 20+ files.  I have to go in and add a space to every single one so that they will save and show errors before I deploy.  It makes VS code almost unusable for this scenario.

@michellequack our integrations are in no way special, so you may want to consider running your linters manually while you wait for us to a make decision about this feature request.

One benefit to implementing this is we could execute a linter once and not per-file to save on perf overhead as in #4236.

It's also very useful to cleanup an old project that has some history of linting errors that you'd like to cleanup. Running the command line flake8 does give me all the errors, but having it run by vscode would give me an easy "point-and-click" to jump to the relevant code to fix it.

I would definitely love to see this implemented for all languages (well ok, for typescript at least).

For now it seems that you have to run a task which will lint every file. I created such task and described it in this post.

For now it seems that you have to run a task which will lint every file. I created such task and described it in this post.

@piotrgredowski  Would this work for mypy too?

@chrissyast it could. You can write a task to launch something like mypyd in the background and write the appropriate problem matcher to parse the output

@chrissyast exactly like @brettcannon wrote. With correct problem matcher you can whatever you want with output from any tool.
In my blog post I've added mypy configuration with problem matcher if you'll be interested.

@piotrgredowski Many thanks for the updated blogpost :)

+1 for the feature

+1 please!

+1 as well, I added to both thumbs up and rocket-emoji in OP.  In the meantime, I'll try out the task def workaround in issue #82.

I'm now using this task for Python to run mypy on an entire project. Gets me highlights in the file explorer tree. I love it! Only downside of course is having to manually run the task.

put this snippet in .vscode/tasks.json
Run the command Tasks: Run Task
Select the new task to run mypy.

Replace --package $YOUR_PACKAGE appropriately for your situation. You can change presentation if you don't want the output to pop up as well.
{
    "version": "2.0.0",
    "tasks": [
        {
            "label": "Python: lint entire project with mypy",
            "type": "shell",
            "command": "mypy --no-pretty --show-column-numbers --package $YOUR_PACKAGE",
            "group": "test",
            "presentation": {"reveal": "always", "panel": "new"},
            "problemMatcher": {
                "owner": "python",
                "fileLocation": ["relative", "${workspaceFolder}"],
                "pattern": {"regexp": "^(.+):(\\d+):(\\d+): (\\w+): (.*)$", "file": 1, "line": 2, "column": 3, "severity": 4, "message": 5}
            }
        }
    ]
}```

+1 for this feature.

+1

Please leave a 👍 on the original message to upvote this idea; "+1" comments and the like are a bit noisy for the 18 folks subscribed to this issue and actually don't help with prioritization.

This is supported for mypy via the mypy extension, using the reportingScope setting.
For pylint please track this issue: https://github.com/microsoft/vscode-pylint/issues/79
For flake8 please track this issue:

What is about ruff? The issue is opened on ruff side: https://github.com/astral-sh/ruff-vscode/issues/145

What is about ruff? The issue is opened on ruff side: astral-sh/ruff-vscode#145

Ruff is maintained by Astral themselves, so we don't have any control of their support.


'All changes saved' appears even if there are no gradebook items

In a new site, the 'All changes saved' appears even if there are no items. May be missing a visible state check.

Confirmed.


Add a file for the schools of Loimaa,Finland.

@untok Pull request merged. Please notice that free educational license for JetBrains tools is for high and higher schools students, i.e. those who are over 13 of age. Thank you!


Read user profile images from json

This is a question in relation of the issue https://github.com/loklak/loklak_webclient/issues/59 (to be reopened):

when the loklak_server was able to provide an user image, it will also store the image in a cache for further usage
that cache will be the user information within the user account
the image would be a base64-encoded string
when the front-end receives search entries, it will also contain such base64-encoded images.

The question is: can the front-end read and decode such images and display them without doing any more requests to twitter or the backend?

This issue is also related to https://github.com/loklak/loklak_webclient/issues/165

Yes it is related to https://github.com/loklak/loklak_webclient/issues/165 !!
The backend-service has been implemented now in https://github.com/loklak/loklak_webclient/issues/59 but with this issue it would not even be necessary to access the backen-proxy or twitter itself, because the image could be embeded into the user data. If this is possible with the proposed base64 encoding, it will be done!

Base64 would work, no problems. This can be easily done.

Ok, thank you @aneeshd16 !!
Then I have one further question, which is connected: if the loklak_webclient has successfully read an user image (without usage of the proxy), can the loklak_webclient submit this to loklak_server for storage in a base64 encoded string with a POST request?

if this is possible, the new process described in https://github.com/loklak/loklak_webclient/issues/59#issuecomment-111522188 will slightly be changed.

@Orbiter, it is certainly possible but i wouldn't go with it. A search gave me the following way to convert an image to base64:

create a html canvas element
draw the image on the canvas
get the base64 string from the canvas.

So if there are 100 results in a search, this process will have to be repeated 100 times, not to mention making 100 requests to the server.
Sure, it can be done, but I am not sure it how it would affect the performance.
@fuksi @sudheesh001

hm, ok it's strange that the other way around (base64->image easy, image->base64 complex) is so different. However, there is also a security issue about user images if we would do that. Therefore forget about the latest idea, but we still then draw images from base64 of the backend.
Further steps are described in https://github.com/loklak/loklak_webclient/issues/59#issuecomment-111522188 ..thank you!

:+1:


HtmlRewriter::end() should take self, not &mut self

As documented, both end() and write() will panic if you do anything with the rewriter after you call end(). This can be enforced statically by having end() consume the writer.

This is how it was implemented initially, but IIRC there were some problems with C API because of that. Need to check.


Issues with UWP on EF7 beta 6

I have a UWP app ready to go, but it crashes when running in .NET native. It took me a while to pin down why (Debug runs fine), but I think this is the problem: MakeGenericMethod() cannot create this generic method instantiation because the instantiation was not metadata-enabled: 'MicrosoftDataEntityMetadataInternalClrAccessorSource<MicrosoftDataEntityMetadataInternalIClrPropertySetter>CreateGeneric<app_Unofficial.Models.appModels,MicrosoftDataEntityDbSet<app_Unofficial.Models.Favorite>. I don't even know what this means, but this is one of my Entity models. Any suggestions? The code for this is after one of my other Models. It didn't seem to have any issues?

Yes, this is exactly the issue we are working on in #623. It's ugly, but if you really need to work around this, you will need to add runtime directives to your project.
In Default.rd.xml, you will need to add lines that look like this (this is the bit I had to add for my testproject...names will be different for you). This is just one instance. You will probably need more, especially for queries and for anything that uses re-linq. (They also use MakeGenericMethod).

 <Type Name="Microsoft.Data.Entity.Metadata.Internal.ClrAccessorSource{Microsoft.Data.Entity.Metadata.Internal.IClrPropertySetter}">
      <MethodInstantiation Name="CreateGeneric" Arguments="NetNative.BloggingContext,Microsoft.Data.Entity.DbSet{NetNative.Blog},Microsoft.Data.Entity.DbSet{NetNative.Blog}" Dynamic="Required" />
      <MethodInstantiation Name="CreateGeneric" Arguments="NetNative.BloggingContext,Microsoft.Data.Entity.DbSet{NetNative.Post},Microsoft.Data.Entity.DbSet{NetNative.Post}" Dynamic="Required" />
  </Type>

This is an unfortunate result of https://msdn.microsoft.com/en-us/library/dn600644(v=vs.110).aspx.

A MethodInstantiation directive is required for each different instantiation of the method that is dynamically invoked, and the Arguments element is updated to reflect each different instantiation argument.

We cannot provide these directives in EF directly, but will examine better solutions than adding loads of XML to your project....stay tuned.

I can't seem to get it working... I got rid of that original error, but now I'm seeing this:
TypeHandles are not supported for types that return true for ContainsGenericParameters

@m0ngr31 I haven't seen this error yet. .NET Native support is still a work in progress, and it is currently a minefield of bugs. If you can share any more details about this error message your project and types, which call triggered this, etc. we would appreciate it.

@natemcmaster What info would help the most? I had to dig around in the memory to find that little error snip.
I can add you to my Bitbucket repo if that would be easiest?

@m0ngr31 Please link to your repo here so I and the community can see what is causing the issue. If it's not a public project, please create a separate, public repo that reproduces the issue without your "secret sauce".

I don't have anything to hide, I'm just a terrible programmer! Here's my repo: https://github.com/m0ngr31/Wikki
Hopefully you can figure out something...

@m0ngr31 Thanks for sharing. The issue you encountered above ("TypeHandles ...") is a bug in UWP. I've passed along info to the net native team and they will work on fixing it. We hope to deliver a solution that doesn't require you to include lines of XML. Closing this issue as it is part of #623.

Is there a way I can track the progress of this bug with the .net native team?

Nope. :disappointed: I will update #623 as we make progress on this and other issues in our dependencies.


[1pt] PR: Snap crosswalk to NWM streams

Snaps crosswalk from the midpoint of DEM-derived reaches to the nearest point on NWM streams within a threshold of 100 meters. DEM-derived streams that do not locate any NWM streams within 100 meters of their midpoints are removed from the FIM hydrofabric and their catchments are not inundated. Fixes #1194 and resolves #981.
Changes

src/add_crosswalk.py: Locates nearest NWM stream to midpoint of DEM-derived reaches if within 100 meters. Also fixes a couple of minor bugs.

Testing
Deployment Plan (For developer use)
How does the changes affect the product?

[x] Code only?
[ ] Require new or adjusted data inputs? Does it have start, end and duration code (in UTC)?
[ ] If new or updated data sets, has the FIM code been updated and tested with the new/adjusted data (subset is fine, but must be a subset of the new data)?
[ ] Require new pre-clip set?
[ ] Has new or updated python packages?
[ ] If applicable, has a deployment plan be created with the deployment person/team?

Issuer Checklist (For developer use)
You may update this checklist before and/or after creating the PR. If you're unsure about any of them, please ask, we're here to help! These items are what we are going to look for before merging your code.

[x] Informative and human-readable title, using the format: [_pt] PR: <description>
[x] Links are provided if this PR resolves an issue, or depends on another other PR
[x] If submitting a PR to the dev branch (the default branch), you have a descriptive Feature Branch name using the format: dev-<description-of-change> (e.g. dev-revise-levee-masking)
[x] Changes are limited to a single goal (no scope creep)
[x] The feature branch you're submitting as a PR is up to date (merged) with the latest dev branch
[x] pre-commit hooks were run locally
[x] Any change in functionality is tested
[ ] Passes all unit tests locally (inside interactive Docker container, at /foss_fim/, run: pytest unit_tests/)
[x] New functions are documented (with a description, list of inputs, and expected output)
[x] Placeholder code is flagged / future todos are captured in comments
[x] CHANGELOG updated with template version number, e.g. 4.x.x.x
[x] Reviewers requested
[x] Add yourself as an assignee in the PR  as well as the FIM Technical Lead

Merge Checklist (For Technical Lead use only)

[ ] Update CHANGELOG with latest version number and merge date
[ ] Update the Citation.cff file to reflect the latest version number in the CHANGELOG
[ ] If applicable, update README with major alterations

Inundation in 18100201 in the oval area was reported to be false. The current feature branch dev-extend-fix-snap-crosswalk corrects the crosswalking error in the DEM-derived reaches (red dashed lines) and removes the inundation.

The current feature branch dev-extend-fix-snap-crosswalk removes the DEM-derived reaches and catchments if no NWM stream is found within 100 meters of the midpoint of the DEM-derived reach. The effect is that there are areas with no catchments in the HUC (left). However, those areas may be inundated by other branches as displayed in the mosaicked image on the right.

Results of the evaluation of the crosswalk using the intersection method (using tools/evaluate_crosswalk.py) in the BED HUCs (n=2153):

The mean evaluation increased from 96.8% to 97.4%
Evaluation for 1632 HUCs increased, 11 unchanged, and 510 HUCs decreased

More detailed overall stats comparing fim_4_5_2_11 - fim_4_4_15_0:
count    2153
mean        0.006315
std         0.015147
min        -0.078818
25%         0.000048
50%         0.003039
75%         0.007652
max         0.222222

I looked at the HUC that decreased the most. The low performance highlights a known limitation in the evaluation test rather than a reduction in the crosswalk accuracy. For example, in the image below, the midpoint of the DEM-derived reach (dashed red line) is correctly crosswalked to the green NWM feature_id via the snapping method, but the evaluation that compares the number of intersections in the DEM-derived reaches and the NWM streams has more intersections with the solid red NWM stream than the green NWM stream.

That's great! I'll count this as a pretty big win.


add static infos :

[x] who are we and why ?
[ ] contribute / roadmap
[ ] Legal
[x] technos used
[ ] documentation : api Openscraper
[ ] documentation : configure a datamodel
[ ] documentation : configure a scraper

[ ] global settings
[ ] advanced settings : api / reactive
[ ] custom settings

@JulienParis Hi.
I'm trying a local installation of openscraper, but I could not find any information about the meaning of the different spider fields.
Is there some kind of document, anywhere, that could guide me towards the creation of a minimal spider?

Before anything : I have to merge the Selenium branch to the master before you'd use the following advices and comments (or you can use the Selenium branch for now)...
So... I confess I have planned to work on the doc and tutos + popups, but still didn't find the time to put much online... Anyway the main idea when you want to define a scraper/spider :
1/ you define your datamodel in the /datamodel/edit page
2/ then when you create / add a spider, you need to fill the custom fields with the corresponding xpath, and the tricky part is to configure the global fields...
golbal_fields configuration :

page_url : the root of the website you'll scrap upon
start_urls: the url for the page containing the listing  you want to scrap
item_xpath : the xpath returning the list of items' blocks you'll scrapp
next_page : the xpath to the "next page" button on the page if any
follow_xpath : the xpath to get the link redirecting to the detailed page (i.e. .//a/@href)
api_pagination_root :  only for API's spider - specify the root url to get next results page (i.e. http://www.villes-internet.net/getAtlaasActions?z=n&e=[4_2]&p=, OpenScraper will increment automatically and add a <PAGE_NUMBER>at the end)
api_follow_root : only for API's spider - specify the root url to get to a detailed page with an ITEM_ID (i.e. http://www.villes-internet.net/actions/<ITEM_ID>

Let me know if those brief comments help you, in that case I'll begin to add those in the tutos section

@JulienParis Thank you for the quick reply. It's much clearer now. I will run other tests this afternoon and let you know.

Before anything : I have to merge the Selenium branch to the master before you'd use the following advices and comments (or you can use the Selenium branch for now)...

Sorry, I did not understand. Do you mean the master branch does not actually work? Or parameters are different?

the master branch works but doesn't include neither selenium nor API scraping... so some fields like api_pagination aren't present in the master branch (for now)


radd

In the micrograd engine.py line number 76, the code should be 'return other + self' not 'return self + other'

No, because this would cause an error:
>>> from micrograd import engine
>>> v = engine.Value(3)
>>> v + 3
Value(data=6, grad=0)
>>> 3 + v
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/ps/ugr/micrograd/micrograd/engine.py", line 76, in __radd__
    return other + self
  File "/home/ps/ugr/micrograd/micrograd/engine.py", line 76, in __radd__
    return other + self
  File "/home/ps/ugr/micrograd/micrograd/engine.py", line 76, in __radd__
    return other + self
  [Previous line repeated 996 more times]
RecursionError: maximum recursion depth exceeded

But modifying __rsub__ and __rtruediv__ can save extra unnecessary calls of __radd__ and __rmul__:
    def __rsub__(self, other): # other - self
        return (-self) + other
...
    def __rtruediv__(self, other): # other / self
        return self**-1 * other


feat(i18n): add Russian translations

Add Russian language for @valibot/i18n
cc: @Sdju @Hekikai for validating validation messages

Thank you very much! I will wait for the review of the linked persons.

A few things to change and it can be merged ;)

We've resolved all issues with translations

Thank you both very much!

Are you done with all the changes? Is it ready to merge, or should someone else do a final review first?

Are you done with all the changes? Is it ready to merge, or should someone else do a final review first?

I'm still waiting for some answers from the PR author

Now we are completely ready


add helper for macro to get either bevy::x or bevy_x depending on how it was imported

Objective

It can be useful for third party crates to work independently on how bevy is imported

Solution

Expose an helper to get a subcrate path for macros

bors r+


Add sqlite support

This PR adds SQLite support to the package since it uses a compatible savepoint syntax to Postgres.   I am starting to experiment with running SQLite as an "in-memory" store for tests and development and Postgres for production and adding this level of compatibility feels pretty good.  Please let me know if there is more you'd like before merging this request - I'm more than happy to do so.

Hello @daveworth, apologies for the extra late reply
We recently added CI integration (cf https://github.com/heetch/sqalx/pull/19), would you mind rebasing your PR to use the Makefile?
Thanks in advance!

Hi @skateinmars - I've rebased and pushed.  We should be set to go.  I'm looking forward to any additional changes you'd like to this PR.

Suggested changes made (thank you!  This is much better now!)

Merging, thanks again for your contribution!

Thanks a lot @daveworth for this! :hugs: