duplicated nft rules in ovh nodes

table ip nat {
	set host {
		type ipv4_addr
		elements = { <IP_ADDRESS>, <IP_ADDRESS>,
			     <IP_ADDRESS>, <IP_ADDRESS>,
			     <IP_ADDRESS> }
	}

	chain pre {
		type nat hook prerouting priority 0; policy accept;
		ip daddr @host tcp dport # 2222 dnat to <IP_ADDRESS>:ssh
		ip daddr @host tcp dport 2379 dnat to <IP_ADDRESS>:2379
		ip daddr @host tcp dport 2380 dnat to <IP_ADDRESS>:2380
		ip daddr @host tcp dport http dnat to <IP_ADDRESS>:http
		ip daddr @host iifname "backplane" udp dport domain dnat to <IP_ADDRESS>:domain
		ip daddr @host tcp dport https dnat to <IP_ADDRESS>:https
		ip daddr @host tcp dport 2222 dnat to <IP_ADDRESS>:ssh
		ip daddr @host tcp dport 8384 dnat to <IP_ADDRESS>:8384
		ip daddr @host tcp dport 30560 dnat to <IP_ADDRESS>:30560
		ip daddr @host tcp dport 2379 dnat to <IP_ADDRESS>:2379
		ip daddr @host tcp dport 2380 dnat to <IP_ADDRESS>:2380
		ip daddr @host tcp dport http dnat to <IP_ADDRESS>:http
		ip daddr @host iifname "backplane" udp dport domain dnat to <IP_ADDRESS>:domain
		ip daddr @host tcp dport https dnat to <IP_ADDRESS>:https
		ip daddr @host tcp dport 2222 dnat to <IP_ADDRESS>:ssh
		ip daddr @host tcp dport 8384 dnat to <IP_ADDRESS>:8384
		ip daddr @host tcp dport http-alt dnat to <IP_ADDRESS>:http-alt
		ip daddr @host tcp dport 2379 dnat to <IP_ADDRESS>:2379
		ip daddr @host tcp dport 2380 dnat to <IP_ADDRESS>:2380
		ip daddr @host tcp dport http dnat to <IP_ADDRESS>:http
		ip daddr @host iifname "backplane" udp dport domain dnat to <IP_ADDRESS>:domain
		ip daddr @host tcp dport https dnat to <IP_ADDRESS>:https
		ip daddr @host tcp dport 2222 dnat to <IP_ADDRESS>:ssh
		ip daddr @host tcp dport 22000 dnat to <IP_ADDRESS>:22000
		ip daddr @host tcp dport http-alt dnat to <IP_ADDRESS>:http-alt
		ip daddr @host tcp dport 2379 dnat to <IP_ADDRESS>:2379
		ip daddr @host tcp dport 2380 dnat to <IP_ADDRESS>:2380
		ip daddr @host tcp dport http dnat to <IP_ADDRESS>:http
		ip daddr @host iifname "backplane" udp dport domain dnat to <IP_ADDRESS>:domain
		ip daddr @host tcp dport https dnat to <IP_ADDRESS>:https
		ip daddr @host tcp dport 2222 dnat to <IP_ADDRESS>:ssh
		ip daddr @host tcp dport http-alt dnat to <IP_ADDRESS>:http-alt
		ip daddr @host tcp dport http-alt dnat to <IP_ADDRESS>:http
		ip daddr @host tcp dport 1024 dnat to <IP_ADDRESS>:ssh
	}

	chain post {
		type nat hook postrouting priority 0; policy accept;
		ip saddr <IP_ADDRESS>/16 masquerade
		ip saddr <IP_ADDRESS>/16 masquerade
		ip saddr <IP_ADDRESS>/16 masquerade
		ip saddr <IP_ADDRESS>/16 masquerade
		ip saddr <IP_ADDRESS>/16 masquerade
		ip saddr <IP_ADDRESS>/16 masquerade
		ip saddr <IP_ADDRESS>/16 masquerade
		ip saddr <IP_ADDRESS>/16 masquerade
		ip saddr <IP_ADDRESS>/16 masquerade
		ip saddr <IP_ADDRESS>/16 masquerade
	}
}
table inet filter {
	chain pre {
		type filter hook prerouting priority 0; policy accept;
	}

	chain forward {
		type filter hook forward priority 0; policy accept;
	}

	chain output {
		type filter hook output priority 0; policy accept;
	}

	chain input {
		type filter hook input priority 0; policy drop;
		ct state { established, related } accept
		iifname "lo" accept
		iifname "vxbackend" accept
		ip protocol 1 accept
		iif "core0" udp dport { domain, bootps, bootpc } accept
		iif "kvm0" udp dport { domain, bootps, bootpc } accept
		iifname "zt*" tcp dport 6379 accept
		tcp dport ssh accept
		ct state { established, related } accept
		iifname "lo" accept
		iifname "vxbackend" accept
		ip protocol 1 accept
		iif "core0" udp dport { domain, bootps, bootpc } accept
		iif "kvm0" udp dport { domain, bootps, bootpc } accept
		iifname "zt*" tcp dport 6379 accept
		tcp dport ssh accept
		ct state { established, related } accept
		iifname "lo" accept
		iifname "vxbackend" accept
		ip protocol 1 accept
		iif "core0" udp dport { domain, bootps, bootpc } accept
		iif "kvm0" udp dport { domain, bootps, bootpc } accept
		iifname "zt*" tcp dport 6379 accept
		tcp dport ssh accept
		ct state { established, related } accept
		iifname "lo" accept
		iifname "vxbackend" accept
		ip protocol 1 accept
		iif "core0" udp dport { domain, bootps, bootpc } accept
		iif "kvm0" udp dport { domain, bootps, bootpc } accept
		iifname "zt*" tcp dport 6379 accept
		tcp dport ssh accept
		ct state { established, related } accept
		iifname "lo" accept
		iifname "vxbackend" accept
		ip protocol 1 accept
		iif "core0" udp dport { domain, bootps, bootpc } accept
		iif "kvm0" udp dport { domain, bootps, bootpc } accept
		iifname "zt*" tcp dport 6379 accept
		tcp dport ssh accept
	}
}

0-robot unable to start after terminating

2019-02-03T15:11:49.178Z: socat E >  failed to delete ruleset: rule 'ip daddr @host tcp dport 6600 dnat to <IP_ADDRESS>:6600' not found
2019-02-03T15:11:49.178Z: containers E >  failed to destroy port forwards: rule 'ip daddr @host tcp dport 6600 dnat to <IP_ADDRESS>:6600' not found
2019-02-03T15:11:51.529Z: containers E >  error in container prestart: port already in use
2019-02-03T15:11:51.646Z: containers E >  failed to start container: port already in use
2019-02-03T15:11:54.715Z: containers E >  error in container prestart: port already in use
.
.
.
2019-02-04T06:38:50.266Z: containers E >  error in container prestart: port already in use
2019-02-04T06:38:50.389Z: containers E >  failed to start container: port already in use

After investigation this duplicates was due a manual intervention (applying some nft rules from a config multiple times)
The main problem though was that the forward rule for the robot didn't clean up correctly on container termination


Two instances of the react/algoliasearch component are not working

The second instance is not returning any results.
Any idea why?

how you instantiating it?


expect: Improve report when matcher fails, part 7

Summary
For 4 matchers which correspond to >, >=, <, <= number comparison operators:

Display matcher name in regular black instead of dim color
Repeat not and operator following Expected: label

For more information, see discussion with @jeysal in #7795
For these matchers which define expected intervals, I have not thought of any additional way to reduce apparent weirdness when received value is equal to expected boundary.
Residue for future pull request, in call to ensureNumbers helper function:

Delete period in matcher name to display matcher name in regular black instead of dim color
Provide options as argument to display promise and isNot

Test plan
Updated 66 snapshots. To save mental effort, review as 33 adjacent pairs of snapshots.

matcher

14
toBeGreaterThan

19
toBeGreaterThanOrEqual

14
toBeLessThan

19
toBeLessThanOrEqual

Here are pictures for 2 out of 4 matchers:

beyond baseline at left (matcher name already black instead of dim)
improved at right

Finally catching up, this pull request provides concise solution to problem reported in #7105
/cc @Abhishek-Modi-Happyperks @joanasmramos


PuzzleMe issues

Great plugin- last two days, having problems with embedded PuzzleMe windows.
Try https://fordhamobserver.com/71620/fun-and-games/wednesday-january-25/
or
https://www.blackcrossword.com/

Thanks for the report! Thankfully just a trivial update since the puzzle data was moved somewhere slightly different.
Fixed in 1.2.19, which has been uploaded to the Chrome and Firefox app stores. Firefox typically approves within minutes, and Chrome within 1-2 days, though this can vary.


redirect url contains String[] parameter values

If I specify the attribute redirect="true" on a view in one of the webflows (login-webflow.xml for example) I end up with serialized String[] in the URL. So the URL would look like:
/login?client_name=%5BLjava.lang.String%3B%40221ebc09&oauth_token=%5BLjava.lang.String%3B%40fcb045f&oauth_verifier=%5BLjava.lang.String%3B%40598c0112
url-decoded:
/login?client_name=[Ljava.lang.String;@221ebc09&oauth_token=[Ljava.lang.String;@fcb045f&oauth_verifier=[Ljava.lang.String;@598c0112
I'm pretty sure the culprit is in the the following class: org.jasig.cas.web.flow.CasDefaultFlowUrlHandler in the method:
    @Override
    public String createFlowExecutionUrl(final String flowId, final String flowExecutionKey, final HttpServletRequest request) {
        final StringBuilder builder = new StringBuilder();
        builder.append(request.getRequestURI());
        builder.append('?');
        @SuppressWarnings("unchecked")
        final Map<String, Object> flowParams = new LinkedHashMap<String, Object>(request.getParameterMap());
        flowParams.put(this.flowExecutionKeyParameter, flowExecutionKey);
        appendQueryParameters(builder, flowParams, getEncodingScheme(request));
        return builder.toString();
    }

Here request.getParameterMap() will return a Map<String, String[]> which results in the url above. Apparently org.springframework.webflow.context.servlet.DefaultFlowUrlHandler#appendQueryParameters wasn't meant to be fed a Map<String, String[]> (which I find weird, since you exactly expect it to receive the parameter map from the request). But this doesn't work really well.

Thanks for the report. Possible ideas on the fix?

Should we explode that array as individual parameters?

Quick workaround: could u just do an externalRedirect like some of the other views?

Yeah the proper way is to explode the array to individual parameters. Basically if you have a request with querystring: ?key1=value1.1&key1=value1.2&key2=value2.1 calling request.getParameterMap() will return (pseudo-json):
{
  key1: [value1.1, value1.2]
  key2: [value2.1]
}

and this should go the other way around.

Fair enough. Could I interest you to taking this one and put together a few confirming tests in a PR?

I'd like to have this end up in the 4.2.x, should I PR against 4.2.x or master? (i.e. do you forward-port or back-port)?
I'm pretty pressed for time, but maybe tomorrow evening? I'll see what I can do.

You can do either. We'll port it where necessary. I'd go for master.
Note that we are about 10 days away from the GA release. So you should plenty of time.
Thanks again.

I can't seem to build cas, any idea what I'm doing wrong? I don't have a lot of gradle experience...
cas 16h master / ./gradlew build --parallel -x test -x javadoc -DskipCheckstyle=true -DskipAspectJ=true -DskipFindbugs=true                                                                                java-1.8.0_65
Parallel execution is an incubating feature.

FAILURE: Build failed with an exception.

* Where:
Build file '/Users/auke/projects/workspaces/nrc/cas/build.gradle' line: 1017

* What went wrong:
A problem occurred evaluating root project 'cas-server'.
> No such property: java for class: org.gradle.api.java.archives.internal.DefaultManifest

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

BUILD FAILED

Total time: 5.516 secs

Are you building from master? Are you recent in your fork? Make sure you're using the latest JDK 1.8.

Version information:
------------------------------------------------------------
Gradle 2.10
------------------------------------------------------------

Build time:   2015-12-21 21:15:04 UTC
Build number: none
Revision:     276bdcded730f53aa8c11b479986aafa58e124a6

Groovy:       2.4.4
Ant:          Apache Ant(TM) version 1.9.3 compiled on December 23 2013
JVM:          1.8.0_65 (Oracle Corporation 25.65-b01)
OS:           Mac OS X 10.10.5 x86_64

Apparently I needed to add
apply plugin: 'java'

in build.gradle for it to work. But even after that I got the following error:
uild file '/Users/auke/projects/workspaces/nrc/cas/build.gradle' line: 1286

* What went wrong:
A problem occurred evaluating root project 'cas-server'.
> Cannot add task ':javadoc' as a task with that name already exists.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

BUILD FAILED

Total time: 10.933 secs

I commented the :javadoc task out for now, after that I build succesfully. This was a fully up to date clone of Jasig/cas master.

This might be a bit confusing, but I created two pull requests for both master and 4.2.x because I later on realised that 4.2.x was on Java 7 of course. So I rewrote it without the lambda's.

You did perfectly great. Thanks.

Sorry about the styling issues, trying to fix those now. takes a while to get used to all the finals ;-)

Oh btw for a bit more information about the why I use this feature: I'm using the pac4j integration to login with a couple of social networks. However upon returning from a successful validation I'm trying to find a linked account for this social network (i.e. I have a single account that can be linked to multiple social networks). I have extended the webflow in case no such account is found one is automatigically created or linked to an existing account.
The pac4j integration goes something like this:

redirect to social network (save some stuff in the session)
login
come back to callback url (retrieve state from session)

now the callback url looks something like this (top of my head): /login?client=someClientId&state=some-difficult-state-identifier&even=more&param=eters. Now at that point I extended the webflow with some extra screens, but the URL at that point never changes. For one that is a bit ugly, but more than that: If the user presses refresh at some point it will usually error out. It's been a while since I implemented this, so I'm a bit fuzzy about the details, but I think either on the CAS side some session infrormation has been removed or the social network does not accept the accessToken anymore to retrieve the UserProfile again. Either way there was something with kind of a one-time state that would trigger ClientAction to fail.
Now that I use redirect=true, my URL changes and the user can press reload.

Cool. Thanks for the notes. Makes perfect sense to me.


Arcgislayers dependency installation failed

Describe the bug
Hi, I am new to R programming and have been trying to install ArcGIS layers and found out it has been removed in CRAN. I tried
to install the two archive version provided and still encountering the same error message despite all the workaround tried and all the pre-requisite (as far as I know) installed.
Here is the error message I got while trying to install the archive folder downloaded : install.packages("C:/Users/skkse/Downloads/arcgis_0.1.0.tar.gz", repos = NULL, type = "source")
Installing package into ‘C:/R_install/R-4.4.1/library’
(as ‘lib’ is unspecified)
ERROR: dependency 'arcgislayers' is not available for package 'arcgis'
The same message while trying to install here also : remotes::install_github("r-arcgis/arcgis", dependencies = TRUE).
I will appreciate any help on this.
Thank in advance.

I am moving and cannot address CRAN's removal. I would recommend installing from r-universe instead.
install.packages("arcgis", repos = "https://r-arcgis.r-universe.dev")
This issue was reported solved by Uwe L. from CRAN on August 1st but it appears they decided to remove the packages without any warning.
I am sorry you have encountered this.

It's worked fine, thank you very much.

Closing this. But it still is not resolved.


Opening a file from SharePoint's "Open in Explorer" window causes lots of Ethernet traffic and cursor loading flickers

VSCode Version: 1.20.0
OS Version: Windows 10 Version 1709 Build 16299.192

Steps to Reproduce:

Using SharePoint 2013, navigate to a document library where a .js file is stored.
Click "Open in Explorer"
Drag the file into VSCODE
Notice that the cursor constantly flickers the loading symbol and constant spike in Ethernet traffic.

Looks like the issue only happens with .js file and does not happen with .html files.
This does not happen in version 1.19. I assumed it was the new error showing in explorer update, but disabling that doesn't resolve the issue. I believe it's something new that's constantly polling the file for information.
Does this issue occur when all extensions are disabled?: Yes!

Does this also happen if you open that file in some other editor, like atom sublime visual studio?
Can you also reproduce with vscdoe insiders?

Using the same .js file I tested in a few editors.
VS Insider : Yes it still happens
VS Pro 2015: No
Atom: No
Sublime Text 3: No
Notepad: No

Additional information:
I believe SharePoint's "Open in Explorer" mode is using WebDAV. Maybe that will help.
It does not happen when the file is local on my machine.

@bpasero any hints on this one?

I have also tested with different file extensions. It doesn't do it with .css or .html.
It seems to only do it on .js files.
I have confirmed that it happens on older versions as well. 1.19.3, 1.18, and 1.17. Which means it might not have to do with something new.

Can you try to reproduce with our nightly insider builds? You can give our preview releases a try from: https://code.visualstudio.com/insiders/

Yes, the issue still occurs in the insider version. However, it doesn't happen in VS Pro 2015, Sublime, or Atom.


Mount middleware for automatically sanitizing JSON Big Ints upon explicit client request

Issue Number

ADP-837
Overview

d5f2044821d10baa9282b40999e60b3fc8f0093c
:round_pushpin: allow 'mintSeaHorseAssets' to take an extra quantity parameter

687f6335d92c0f2821540dc1a2c0364d8aef4840
:round_pushpin: define integration test scenario illustrating the use of 'X-Max-Safe-Integer'

cde44c146528a8fc0901fc5a80299b29348496dc
:round_pushpin: write Wai middleware for serializing BigInt as String on demand
This is done via a middleware for two reasons:

a) It is low overhead when disabled. So that the default behavior of the server remains unchanged.
b) Doing so makes the whole approach quite 'holistic' and we risk not to forget turning a potentially
big int into a string later when writing JSON instances.

92d852cd23d6b0ff9eb2bb93808c304d22e394b6
:round_pushpin: sketch out simple property for 'traverseJSON'
As a sanity check to convince myself that the function does indeed preserve the JSON structure.

e92568e25db462a611d35b3e4eedb99041fd8d16
:round_pushpin: modify 'AddressAmount' JSON parser to also accept amounts as string by default.
No need for a specific header for that one since this is simply an additive fallback behavior. Thus, it is only triggered
for clients which seek for it.

Comments

TODO:

[ ] Document this in the API documentation.

@piotr-iohk putting this one one your radar, if you want to have a quick look at it.

Thanks @KtorZ. I've updated ruby client (https://github.com/piotr-iohk/cardano-wallet-rb/pull/33). I might add some more tests to e2e suite, although don't want to just replay the same/similar tests there.
So if I'm not mistaken setting X-Max-Safe-Integer for any request should result in any integer returned by the API to be reported as string, correct?
I believe it needs to be documented in APIDoc, not sure where would be good place though, since it is global for all requests.

Nikola said he wanted to put that one on hold until he got time to play around the json-bigint node library which could likely solve their problem without requiring changes from this PR.

@nikolaglumac it seems https://github.com/input-output-hk/daedalus/pull/2472 was fixed without the need of this PR?

@nikolaglumac it seems input-output-hk/daedalus#2472 was fixed without the need of this PR?

@piotr-iohk please stand by. We need to confirm few things related to HW first.

Now that Daedalus can parse numbers > 253 from JSON (as can any javascript app using the json-bigint module), we don't need this feature.


Refactor/bus

Description
This PR aims to improve readability of the new bus

this PR is tested (https://github.com/direktiv/direktiv/actions/runs/5670918095/job/15366888054?pr=1009) , the changes do not break anything


Allow disabling random data in unspecified fields

It's sometimes a bit annoying to having to explicitly define fields I want to leave empty. Disabling the random generated values for unspecified keys would come in handy

Agree! PR?


Error when clicking "+ Add Note" when creating a new feature

The error is: ResizeObserver loop completed with undelivered notifications.
To reproduce:
Enable editing -> Highlight sequence -> Right-click -> Create -> New Feature -> + Add Note
https://jsfiddle.net/zah72dnm/3/
@tnrich

I can't seem to reproduce @ryan-stackwave :

not sure why?
Can you send a video of you triggering it maybe?

@tnrich it doesn't seem to error if the "New Feature" modal already has a vertical scrollbar so try giving yourself enough vertical window for the entire modal to display.

Hmm @ryan-stackwave I tried again with no scrollbar and still couldn't get the error to occur I don't think:

Thoughts?

@tnrich very strange, it's happening for me in both firefox and chrome:

Is this breaking anything for you @ryan-stackwave or just showing up as an error?

@tnrich this came up in our testing because we popup a message to the user whenever there are javascript errors. However, I can probably swallow any errors that come out of ove as a workaround.

@ryan-stackwave I wouldn't swallow all the ove errors but this might be one of the ones you'll need to..

@tnrich Debouncing the ResizeObserver callback seems to resolve the issue. Please let me know if you think that's a reasonable approach.
https://github.com/TeselaGen/tg-oss/pull/65


Mark for issue that can be a question/feature request

I think the questions that can be asked in the form of a issue should not be checked by this GHA. Requests for new features may also be skipped.
reports-check-action can be passed if it starts with words like:
I have a question: <question> or I want to request new feature: <feature request>
@h1alexbel wdyt?

@l3r8yJ good one, I like this idea. I think we can just pass a list of regexes into exclude param

@l3r8yJ now we do support this. Checkout the master README.md, here is the link


Improve the Title

Make the title more appealing to the audience.
Instead of "Profile Card" use "Profile Card Hacktoberfest Edition"

I would be glad if you assign me this issue. I want to work on both the textual and design of that H1 tag.

@ayushsarode Hey!! I would be grateful if you could assign this  issue to me.

Sure, note that the design should be appealing!

I would be glad if you assign me this issue. I want to work on both the textual and design of that H1 tag.

Go ahead!


remove station model/serializers and put fk on channels

Still too much nesting.  Channels will get a station_code attribute/column and fk to Networks with network code rather than id

Fixed. Tests all pass


doesn't work if key doesnt have quotes

As the title says
eg. will work with {"test":123} but not {test:123}
disclaimer: I only tried with standard input

{test:123} is not valid JSON.
All keys in JSON have to be wrapped in double quotes as specified in the spec.


Create module manager

Is your feature request related to a problem? Please describe.
When modules are available there needs to be a way for the modules to be stored and fetched in a standardised way. This should be done while compiling in the cli.
Describe the solution you'd like

[ ] Create an interface for the parser to send imports to the cli
[ ] #20

[ ] Module is in std
[ ] Module is local
[ ] Module is in cache
[ ] Download module and put it in cache

[ ] Create an interface for the core to get modules from cli

I've been thinking a bit more about how we can get the module manager to talk with the rest of the system. I suggest that we create a Resolver trait that looks something like this:
trait Resolve {
   fn resolve(path: &str) -> Option<&[u8]>;
}

// and then do
ModuleManager impl Resolve {
   ....
}

Then the core::Context object that handles all of the loaded modules could ask to get something that implements the resolve trait when creating it. Like so,
let mut ctx = Context::new(ModuleManager::new());
let output = eval(&source, &mut ctx);

A benefit of having a trait instead of always providing the cli::ModuleManager is that we for instance could handle module resolution in another simpler way if running inside of a web playground (or a safe mode that always denies external modules),
Side note:
I know that we have talked about whether or not the module imports should be handled by the parsing phase, the runtime or some other phase of the compilation. But I think this approach should work regardless and should be pretty easy to adapt regardless how we choose to handle it later. So I think we can deal with that issue later together in the whole group.

Closed as of the merge of #169


Tab suffix (deleted) stays when file is resurrected

Issue Type: Bug
The usage scenario is as follows:

Work on git branch where a file is present. Keep this file open in VS Code.
Switch to another branch where the file does not exist. The tab is appended with the (deleted) suffix.
Switch back to the first branch. The (deleted) suffix will stay, even though the file is now present.

Here is an example of what it looks like (internal project so most of the content is obscured):

VS Code version: Code 1.39.1 (88f15d17dca836346e787762685a40bb5cce75a8, 2019-10-10T23:30:33.955Z)
OS version: Linux x64 4.19.0-6-amd64

System Info

Item
Value

CPUs
AMD Ryzen 7 2700X Eight-Core Processor (16 x 2676)

GPU Status
2d_canvas: enabledflash_3d: enabledflash_stage3d: enabledflash_stage3d_baseline: enabledgpu_compositing: enabledmultiple_raster_threads: enabled_onnative_gpu_memory_buffers: disabled_softwareoop_rasterization: disabled_offprotected_video_decode: unavailable_offrasterization: disabled_softwareskia_deferred_display_list: disabled_offskia_renderer: disabled_offsurface_synchronization: enabled_onvideo_decode: unavailable_offviz_display_compositor: disabled_offwebgl: enabledwebgl2: enabled

Load (avg)
1, 1, 1

Memory (System)
62.93GB (2.57GB free)

Process Argv
.

 That's the current workaround for this bug.)

@isidorn maybe similar to #82964

Can you try to reproduce with our nightly insider builds? You can give our preview releases a try from: https://code.visualstudio.com/insiders/

Can you try to reproduce with our nightly insider builds? You can give our preview releases a try from: https://code.visualstudio.com/insiders/

Sure. This is the behavior in 1.40.0-insider now (version details below). After switching to a branch where files are gone, it looks like this. Note how the README.md tab lacks the (deleted) suffix, but if I hover it, it's correctly displayed.

Switching back to the branch where these files exist, it looks like this:

Hovering over these tabs also display the correct values.
I retried the exact same process with VSCode non-insiders, but unfortunately it behaved the same there. I wonder if there are some other circumstances around the branch switching/specific tab being open that might affect this...

Version: 1.40.0-insider
Commit: 93ee2fc3121b7f66ddf568c051f3bfff7db8d618
Date: 2019-10-31T06:28:32.160Z
Electron: 6.1.2
Chrome: 76.0.3809.146
Node.js: 12.4.0
V8: 7.6.303.31-electron.0
OS: Linux x64 4.19.0-6-amd64

It is possible that we have missing file events here. If the tab does not detect the file was restored, it would not be able to update its suffix. Can you run "code --verbose" and check the chrome dev tools console for file watcher output to see if the file is included?

@bpasero Thanks. Restarted vscode now with the --verbose flag and will keep it running like that for a while until I see the problem the next time.
One immediate thing I noticed when switching branches (note: not yet reproducing the bug) was messages like this being logged (file names edited for privacy & security). Potentially related to the same root cause?
[22047:1105/101435.172350:INFO:CONSOLE(4350)] "File exists even though we received a delete event: file:///home/per/some/project/roles/foo/templates/systemd/foo.service", source: file:///usr/share/code/resources/app/out/vs/workbench/workbench.desktop.main.js (4350)
[22047:1105/101435.172394:INFO:CONSOLE(4350)] "File exists even though we received a delete event: file:///home/per/some/project/roles/foo/files/bar.py", source: file:///usr/share/code/resources/app/out/vs/workbench/workbench.desktop.main.js (4350)
[22047:1105/101435.172431:INFO:CONSOLE(4350)] "File exists even though we received a delete event: file:///home/per/some/project/roles/foo/templates/bin/baz.sh", source: file:///usr/share/code/resources/app/out/vs/workbench/workbench.desktop.main.js (4350)
[22047:1105/101435.172452:INFO:CONSOLE(4350)] "File exists even though we received a delete event: file:///home/per/some/project/roles/foo/tasks/main.yml", source: file:///usr/share/code/resources/app/out/vs/workbench/workbench.desktop.main.js (4350)
[22047:1105/101435.172477:INFO:CONSOLE(4350)] "File exists even though we received a delete event: file:///home/per/some/project/roles/foo/templates/etc/foo.yaml.j2", source: file:///usr/share/code/resources/app/out/vs/workbench/workbench.desktop.main.js (4350)

Yeah, we have some logic in place for the case of a sudden delete with a sudden recreate of a file. We wait for 100ms after receiving a file delete event and then check if the file came back meanwhile before really declaring the file as deleted.

OK, I see. This is likely to be timing related/intermittent in nature. I just tested a branch switch (to a branch that doesn't contain a particular file) and the VS Code icon/label in the task bar (Cinnamon in my case) reacted to this event. Switching back to the branch where it existed removed the "deleted" part of the label as it ought to.
Nonetheless, I'll keep you posted if/when I'm able to nail this down again.

Ok

@bpasero Managed to reproduce it now, again by switching branches in the git repo I am working with. Unfortunately, no file events got logged into the terminal this time. :cry:
(It might be that this is more easily reproduced if the tab in question is not the active tab, but another file happens to be opened.)

/duplicate https://github.com/microsoft/vscode/issues/28432


Fix bninspect on documented properties

This fixes #3246 .
How:

check whether the value we're trying to get docstrings from is a problematic type (non-class (not non-class-instance, but non-class-object) or non-method)
Call type(blah) on everything before the property, then re-append the .property and re-eval.
This will work even on method types, but we try to be safe and fall back to the original behavior where we know it worked.

Here:
bv.length is an undocumented @property and returns a primitive. It will print int.__doc__ as it did before
bv.functions is a documented @property that returns a Class. It will print the docstring for the property function
bv.types is an undocumented @property that returns a documented Class. It will print the class docs
bv.mlil_functions is a documented function that already worked; It falls back to the original behavior as intended.
current_function.start is a documented @property that returns a primitive. It will print the property function docs.

https://docs.python.org/3/library/inspect.html#inspect.ismethod is a better way to check if something is a method

lgtm


Remove support for up()/down().

With the initial removal of up() and down() back in April 2015 from the AbstractMigration.template.dist file and https://github.com/cakephp/phinx/pull/1410 introducing the deprecation and todo annotations to inform users of Phinx of the dropping of up() and down(), in favour of change(string $direction = null), this issue is to actually effect that deprecation and so remove support for up() and down() completely.
This will be a major backwards compatibility issue, especially if you have hundreds of migrations.
So a reasonable amount of time from when the release of the deprecation needs to be accounted for.
I'd go with 6 months and a new major release (0.11 as things stand at the moment) so that semantic versioning is maintained.

Do we actually need to remove it? I personally find it more clear to split the migration in two steps, if I know my steps cannot be automatically done for me in change

Well, this seems to be the direction, having removed up() and down() from the base template.

I wasn't happy with the initial removal. I'd say at least 90% of my migrations don't use change().
But with #1410, at least change() now has the direction, so, with that, we could leave up() and down() as hidden/undocumented features, but they would need to be maintained indefinitely.
So removing them ... eventually.
If the consensus is to just hide them, then again, why hide them? Re-introduce them into the template, but have them as commented out, so the move from up()/down() to change($direction) is fine, but a user can decide to implement the alternative and supported pattern.
As things stand, a user doesn't see the missing methods in the base template and has to add them back in to use them.

I'd be happy for up/down to be left in - I use a good mix of up/down and change.

PR open https://github.com/cakephp/phinx/pull/1410


[slot_attention] Train and test subsets of CLEVRwithmasks used in Object Discovery task

@tkipf Could you please upload the file lists for CLEVR6 / CLEVR10 train and test splits? It would make repro much easier!
From what I understood that the first 70K frames were used for training. How was the test split obtained? What was its size? Was filtering <= 6 objects done before or after getting the train/test splits?
Do you train only on CLEVR6 with crops?
Are crops done both in training and in testing?
Thank you!

I trained Object Discovery task, on regular full CLEVRtrain dataset. Evaluating ARI on my own sampled CLEVR6-like dataset from CLEVRwithmasks - getting ARI of only 92%.
Would it be possible to provide file lists for the train/test splits for the Object Discovery experiment?
cc @dosovits @tkipf

Hi Vadim, thanks a lot for your comment. We used 320 examples for evaluation, which IIRC were taken from the split right after the first 70k examples which we used for training. I verified that the results did not vary significantly based on the evaluation split (i.e. always stayed in the 98-99% range; this holds even when evaluating on samples from the training set). We chose 320 evaluation examples to stay in line with IODINE, but to be safe I'd recommend taking a larger evaluation split in future experiments.
I think your discrepancy comes from training on a different dataset (the non-DeepMind version of CLEVR) and then trying to transfer to CLEVR w/ masks (i.e. DeepMind's version). We remarked in the Readme that this is not advisable since dataset statistics appear to differ between the two datasets (e.g. object scale, camera position etc.).

Do 70K count before or after filtering by <= 6 objects?
It would indeed be better to have the actual splits ^^ or at least a code snippet that does filtering / splits
FYI my pytorch reimplementation is at https://github.com/vadimkantorov/yet_another_pytorch_slot_attention - also there are some nuisance because of missing padding="same" mode in PyTorch, so I did some crude interpolate call instead of fighting the paddings.

That's a great question! I just checked and we first filter by number of objects, which leaves about 50k examples, and then get the evaluation split (final 320 examples) from there and use the rest for training. Minor differences in this protocol should not matter much, however, as the variance between runs with different seeds on the same splits should be higher than what you get if you compared on different splits.


collection of points for refactoring

Here we can collect tasks for a major refactoring that we will do at some point.

[ ] add leading underscore to _functions_not_to_be_used_by_users() (internal functions)
[ ] docstring convention: short description in first line, then blank line and then longer description. Description of arguments and return values for the more complicated methods.

The class PFBaseInterface is very large. This is convenient for the user because one class provides much functionality and avoids additional lines of code to instantiate further interface classes.
However, we could separate the functionality into several classes from which PFBaseInterface inherits (multiple inheritance). This can improve the organisation in the code.


Ported VGDL to environment

Quick hack to get VGDL working in the PLE. Also works as an OpenAI Gym Env with gym-ple.
There are a number of games written in VGDL available from the GVG-AI competition, as well as the original py-vgdl.

Woah; thanks for adding this. Seems like there are many games you can add just from this.  Also curious on what the licensing will be on each individual game specified in this language. Do you know what it might be?
I've added some comments on the PR as well. I will have limited access to a computer in the next week so I might not be able to respond immediately.

Thanks for the comments, I'll go through these and fix them before my next commit.
I haven't actually tested it with a RL algorithm yet (unfortunately I haven't managed to get GPGPU working on this machine yet), although it seems to work fine with random agents and also in the OpenAI gym. I'll do this after I've finished making changes.
Game and level descriptions can be taken from the GVG-AI competition (https://github.com/EssexUniversityMCTS/gvgai/tree/master/examples/gridphysics), and are licensed under GNU GPL. Not all of these will work out of the box as there are some 'ontology' classes from the Java version of VGDL which haven't yet been implemented in python. There's also the original py-VGDL games here: https://github.com/schaul/py-vgdl/tree/master/examples .

@EndingCredits Im going to close this for now. Let me know if you are able to work on it later on.


inject log files into phedex instance

Hi,
We have set up a special phedex instance to transfer log files from castor to eos. Right now we are using a cronjob to inject the log files into phedex. This cronjob is crashing a lot and @merictaze recommends that wmagent should directly inject the log files into the phedex instance.
Andrew

Could you point me the cronjob script code?

Hi,
Just a clarification, it's not crashing a lot, it was crushing in the first implementation when castor file listing returned a lot of file. It got fixed 3 months ago and working without any problem since then.
However, instead of listing files on castor everyday with a cronjob, it would be better if WMAgent injects the log files into PhEDEx Ops instance once they're created.
The script can be found at:
https://github.com/CMSCompOps/TransferTeam/blob/master/log_transfer/LogTransfer.py
Cheers,
Meric

Hi Seangchan,
We would like WMAgent to do three things:

Inject all of the log files into the phedex instance
When the workflow is finished, create a replica subscription to transfer its log files from T0_CH_CERN_MSS to T2_CH_CERN
Approve this subscription

Andrew

Hi,
Current procedure in the script is the following:

1) Get log files under '/castor/cern.ch/cms/store/logs/prod/[YEAR]/[MONTH]/WMAgent'
2) Filter out the files already injected to PhEDEx
3) Create injection xml
dataset: /Log[YEAR]/[MONTH]/[WFNAME]
block: /Log[YEAR]/[MONTH]/[WFNAME]#01
LFN: /store/logs/prod/[YEAR]/[MONTH]/WMAgent/[LOGFILE]
4) Inject to T0_CH_CERN_Export
5) Create subscription&approve at T2_CH_CERN

Injection and subscription should happen at the same time as a WF can run even 1 month. so no need to wait WF to finish.
Another approach might be:

1) Create&approve a subscription for [1] at T2_CH_CERN in the beginning of WF submission
2) Inject new log files into [1] whenever they're produced
3) PhEDEx will transfer them from T0 to T2 automatically.

Regards,
Meric
[1] /Log[YEAR]/[MONTH]/[WFNAME]

Meric just told me the phedex log instance is running in virtual dev machines, not in cmsweb.
I would not advice any WMCore development against external services running in other's private VM, that means it will most likely not be done for July.

OK, can you put it in cmsweb @merictaze?

I asked to migrate it to cmsweb in the next deployment.
https://hypernews.cern.ch/HyperNews/CMS/get/comp-ops/1999/1/1/1/1/1.html

What kind of log files are under /castor/cern.ch/cms/store/logs/prod/[YEAR]/[MONTH]/WMAgent?
Is are those log archive files? or something else?

The logCollect tarballs, like this one
/castor/cern.ch/cms/store/logs/prod/2015/06/WMAgent/amaltaro_ReDigi_cmsRun2_LumiMask_Agent107_Validation_v2_lazy_150616_141051_4986/amaltaro_ReDigi_cmsRun2_LumiMask_Agent107_Validation_v2_lazy_150616_141051_4986-LogCollect-server-d429648e-a427-4338-9300-659b69d7eaaf-1-logs.tar

Isn't that only in the tape for the reason? (i.e because of it size, if it is stored T2_CH_CERN isn't it using too much disk space to store that?)

We use tape in order to archive those logs "forever". The idea of writing it also to T2_CH_CERN is more for the ~new workflows (last 6 months or so). Later on someone will need to do some clean up, but I guess we don't need to worry about it right now.

Currently anything at this path older than 2 months are being deleted by EOS cleanup script.

Hi,
@nikmagini told me it is possible to copy files from outside of CERN to eos, using lcgcp for example. I think the best solution is that we write the log files directly to eos instead of castor (or we write them to both castor and eos).
Andrew

It seems following code (eventually) triggers log archived file to go castor.
https://github.com/dmwm/WMCore/blob/master/src/python/WMCore/WMSpec/Steps/Executors/LogCollect.py#L71
I am not sure whether we can stage out to both. If we stageout to eos we have to move to castor somehow.
@hufnagel, Dirk, could you give me some advise?

Hm, the LogCollect Executor code is basically a customized Stageout Executor. You can see it in the comment in line 5 that it started out as a simple copy. All they do here is hardcode using the overrides and hardcode the default override settings. Its done in a bit convoluted way, but I guess they wanted to keep the ability to use a real override for staging out logcollect too.
We could just modify it further to do two stageouts with two different overrides, but then the question becomes: What to do if there is a real override, do we copy twice to the same location ? Do we make the code more complex to catch that case ? I assume here we want to keep the override functionality to be able to do self-contained tests.

Thanks for the comments Dirk.
Assuming we can/want two stage out. There are a couple of things need to be hacked to make this work.

output file locations need to be set on eos location which would be T2_CH_CERN (assuming PNN transition is done) instead of castor.
The log archive files need to be recorded in DBSBuffer with meaning pull dataset name and block name (it doesn't mean it will be uploaded to DBS. (Maybe we can control that with block status).
PhEDEx Injection is made on those block.

Or we can make to stage out to eos and create replica subscription to castor. (I am not even sure that is possible). And do 2. 3. above.
@amaltaro, @hufnagel, It seems hacky way to do this. Do you have any other suggestions?

As far as I remember, these will go into a separate DBS and PhEDEx instance, correct ? Which is not really supported by DBSBuffer...

And if I wanted to do this in a clean way, I would make logArchive output files from a job look exactly like any other ouput files from a job (with the possible caveat to override the stageout to T2_CH_CERN). If they are treated like anything else, you can setup the usual subscriptions etc.

Hi Seangchan,
If we can stage out the log files to both castor and eos, I think we probably won't use a phedex instance for log files. We can then just delete old log files from eos with a cron job. Do you agree @merictaze?
Andrew

Hi Andrew, so Is PhEDEx not used for search, just for the transferring files?
In that case current naming conversion for lfn, is sufficient for getting the file you want efficiently?

Hi Seangchan,
Yes, the log file phedex instance is just used right now for transferring and deleting the files. Having lfns for log files is not necessary.
Andrew

If all you want is to have have copies on eos and castor instead of just castor, having WMAgent make the copies is indeed the easiest way to handle that. That's runtime code only changes in WMAgent.
Retrofitting WMAgent to be able to get logArch information up from the runtime to the PhEDExInjector and then be able to inject files into a different instance would be a major pain.
In an ideal world it would be nice to have it, as it would be the cleanest way to deal with these files. But I would put that as "VeryLowPriority, maybe in a year or two if we have nothing better to do" and solve this differently now.

I second the idea of double stage out and that is IT. Or stage out to EOS and then copy it to castor.
However, in the past when this issue was discussed, it seems everyone was in favor of using a PhEDEx instance for this purpose (and letting the FTS server/system) handle any transfers. Of course, for that it was discussed we would inject logs into PhEDEx in a similar way as we do for real data/datasets (which IMO was too much, but ....).
If people don't push us to use PhEDEx, than staging out to EOS and copying it to castor is the way to go here.

If you do treat logArchives like any other data, you can even just use the normal stageout rules, define a dataset and then have move/copy subscriptions to T0_CH_CERN_MSS and T2_CH_CERN. Advantage is that you don't hack around, you just treat it as any other data produced by the jobs. Which in the long run should help quite a bit as it simplifies the system.
The problem is that this is a lot of work, especially as this data wouldn't go into the normal PhEDEx instances, which means we need to add support for some data going to one PhEDEx instance and some to another. Which means potentially major changes to the PhEDExInjector and DBSBuffer.
The only solutions feasible NOW (ie. at least 6 months timescale) are double stageout from WMAgent or a single stageout with a later copy (not from WMAgent, but cronjob or whatever).
So coming back to the original issue reported, is the cronjob not feasible. Some later comments seemed to suggest it works again ? Would we gain anything from double stageout compared to the cron job we have now ?

Hi Dirk,
See the new title of the issue. I think we should try to have the double stage out from wmagent, plus a cronjob to delete from eos. We should forget about putting log files into phedex. That is totally overkill.
Andrew

Thanks Dirk, Andrew for all the inputs. So we will just add the code to double stage out LogCollect files.

@hufnagel, Assigning to Dirk, since he is much more expert than me and kindly agreed to handle this ticket. (I am not sure how this will fit generic plug in he is planning to do - maybe not very well).
Thanks Dirk. :smile:

@nikmagini, @merictaze, Hi Nicolo, Meric, which command should we use for transferring data from outside CERN and CERN to eos area.
Jorge tested srm, eos but it doesn't seems to work. But glite-transfer-submit worked.
Could you give me some examples which command to use?
It will be staging out directly from worker node from log archive jobs agent creates, is there special permission needed?
Thanks

Hi,

You can use xrdcp to copy the files to EOS:

xrdcp $localfile root://eoscms.cern.ch//eos/cms/store/logs/$etc

(SRM should also work with this SURL, but it will be phased out eventually:
srm://srm-eoscms.cern.ch:8443/srm/v2/server?SFN=/eos/cms/store/logs
Question for you: do you hardcode the SURL or should we add a proper rule in the TFC for WMAgent

In any case, you need proper authorization to write files directly to EOS. I suppose that we will need to map the DN of the production pilots to a user with write permission on /eos/cms/store/logs

Cheers
N.

Hi,

You can use xrdcp to copy the files to EOS:

xrdcp $localfile root://eoscms.cern.ch//eos/cms/store/logs/$etc

(SRM should also work with this SURL, but it will be phased out eventually:
srm://srm-eoscms.cern.ch:8443/srm/v2/server?SFN=/eos/cms/store/logs
Question for you: do you hardcode the SURL or should we add a proper rule in the TFC for WMAgent

In any case, you need proper authorization to write files directly to EOS. I suppose that we will need to map the DN of the production pilots to a user with write permission on /eos/cms/store/logs

Cheers
N.

Hi,

You can use xrdcp to copy the files to EOS:

xrdcp $localfile root://eoscms.cern.ch//eos/cms/store/logs/$etc

(SRM should also work with this SURL, but it will be phased out eventually:
srm://srm-eoscms.cern.ch:8443/srm/v2/server?SFN=/eos/cms/store/logs
Question for you: do you hardcode the SURL or should we add a proper rule in the TFC for WMAgent

In any case, you need proper authorization to write files directly to EOS. I suppose that we will need to map the DN of the production pilots to a user with write permission on /eos/cms/store/logs

Cheers
N.

The reason I suggest EOS is that inside the LogCollect executor we already use SRM stageout to write to castor, so duplicating this and changing the URL to write to EOS is trivial, while changing the stageout method to xrdcp is not trivial.
Its not as simple as calling the command, because this code actually re-used the WMCore stageout code, with the rety features that gives you. We want to keep this.

Dirk, what you say would be easier to code is to copy the same tarball twice from siteX to CERN, right?
IMO, the proper way of fixing it would be:

copy the tarball from siteX to castor
if the copy succeeded, then right away ...
copy the tarball from castor (it should be in buffer anyways) to EOS - in the best effort mode.

Thus, the logCollect only fails if it fails to copy the tarball to castor.
And we make a local copy to EOS.
Would it be a major change?

I wouldn't do that because then again you have to code the castor to eos copy manually. Plus how are you supposed to do an efficient castor->EOS copy from a job that runs on a node at a site somewhere else ? Third-part xrdcp is tricky enough within CERN, I wouldn't want to call that from somewhere else.
Duplicate the SRM stageout code lines, change the URL and be done with it.

Thanks all.
Dirk, I think Alan was the same thing as you, copy to castor and copy to eos (not copy from castor)
The change wouldn't be a major change. And Dirk suggested we should go with srm for now.
Dirk has plan to do the refactoring (more of rewriting StageOut anyway) This will be temporary.
The one problem was last time Jorge tested srm command didn't work. We will retest it.
How does the permission granted, the copy is from worker node, right? How is the copy to castor is granted now? Shoudn't be the same way to grant the permission to eos.

Question for you: do you hardcode the SURL or should we add a proper rule in the TFC for WMAgent

I think it is better to have proper rule in TFC for WMAgent if it is not a big trouble.

Nope, I really meant from castor to eos. That's why I said the proper way, at least from the network point of view. Anyways, provided we run 300k jobs per day, that would result in average in 600 logCollect jobs (let's say 1000), so it's not a big deal in the end.
What's a SURL? Does it mean we would need to map/set this url in the TFC of ALL sites? If that's the case, then I'm in favor of defining it directly in the WMCore code.

Sorry Alan, I misunderstood you again. :smile: Is there advantage is doing that (copy back from castor) instead of directly stageout from site?

The advantages would be that:

we don't need to transfer files (between 1MB - 400MB size) twice over WAN, castor to eos would be local
less prone to network failures

However, since the logCollect load is not that high, we can just go for the easier fix as Dirk suggested.
Especially if Dirk knows how to do this change :-P

What's a SURL? Does it mean we would need to map/set this url in the TFC of ALL sites? If that's the case, then I'm in favor of defining it directly in the WMCore code.

I think SURL is just this (I think is acronym for Site URL) srm://srm-eoscms.cern.ch:8443/srm/v2/server?SFN=/eos/cms/store/logs.
I don't know how to change TFC rules, is it under each sites admin's hand or can be changed centrally. If it is first case, may we should hard code it as Alan said.

TFC does not need to be changed. We write the logcollect files to standard namespace on EOS. In any case, the settings are hard-coded now
https://github.com/dmwm/WMCore/blob/master/src/python/WMCore/WMSpec/Steps/Executors/LogCollect.py#L65
we just need to add another set of rules for EOS. Basically just change seName, lfnPrefix and lfnBase, create a second StageOutMgr instance with these settings and then make a second call here
https://github.com/dmwm/WMCore/blob/master/src/python/WMCore/WMSpec/Steps/Executors/LogCollect.py#L196

Hi all,
in any case, I think I'll ask Meric to add a proper SRM rule for /store/logs in the T2_CH_CERN TFC - even if you hardcode it, it's better to have it there for consistency.
And again a reminder: eventually SRM in front of EOS is going to disappear. At some point you'll have to change the stageout method anyway (either to xrdcp or gfal-copy)
Cheers
N.

Hi Nicolo,
The rule you asked has been added to T2_CH_CERN TFC:
https://git.cern.ch/web/siteconf.git/blob/HEAD:/T1_CH_CERN/PhEDEx/EOS.storage.xml#l80
Regards,
Meric


File libpowersync_x64.dylib does not exist

on Flutter project, when I run melos prepare:
Downloading: https://github.com/powersync-ja/powersync-sqlite-core/releases/download/v0.2.1/libpowersync_x64.dylib Failed to download file: 404 Not Found File libpowersync_x64.dylib does not exist.

Hey @tva77 thanks for reporting this. We have published the libpowersync_x64.dylib binary to the latest release. Please confirm that it the melos prepare command works for you.

works fine!!
thank you!!


Flakiness in vpc route table integration

insert or update on table "subnet" violates foreign key constraint "FK_89d16ba5682889f8fae7927052c"

https://github.com/iasql/iasql-engine/actions/runs/3743011942/jobs/6354724278
The problem is that the test is assuming that every region will have an availability zone 'a'

The problem is that the test is assuming that every region will have an availability zone 'a'

So some regions don't have an availability zone 'a'? :))

Reviving this issue to make it more generic


failed to load jar /opt/alluxio-2.9.3/lib/alluxio-underfs-hadoop-cosn-3.1.0-5.8.5-2.9.3.jar NoClassdDefFoundError :alluxio/underfs/hdfs/HdfsUnderFileSystemFactory

my presto is deployed in docker individually,alluxio is deployed in another docker container  individually,
alluxio can start well,when presto query hive table ,I can get the query result ,I try to turn on the short circuit read but failed becaues web ui indicater BytesReadLocalThroughput is always 0 no matter how i query,and the alluxio worker log report below  error
failed to load jar /opt/alluxio-2.9.3/lib/alluxio-underfs-hadoop-cosn-3.1.0-5.8.5-2.9.3.jar NoClassdDefFoundError :alluxio/underfs/hdfs/HdfsUnderFileSystemFactory
I think my failing turning  on short circuit read  maybe have something with above error ,can u give me some advice

duplicate of #17554


porting guide doesn't define "mbed-client-" clearly

The usage of the term 'platform' is not clear in the porting guide.  In mbed, this typically refers to a target board.  However, in the case of the porting guide, the term platform seems to refer to the OS (i.e. mbed OS or Linux).  If someone wants to port mbed-client to their target platform (board), yet still run it on mbed OS, then the porting steps are very different.  This has caused some confusion.  I recommend providing two sections in the guide - one for porting to another OS, and one for porting to another board (which must already have a mbed OS port, but may have a new and different network interface).

Agreed that there can be better documentation explaining how to add support for more target boards and network interfaces, but that should go to may be "sal" layer documentation and cross referenced from mbed Client's porting guide. What do you think about this ? @bremoran @maclobdell @peknis01

ARM Internal Ref: IOTCLT-595

There will be new proposed way for porting mbed client. Which will be released soon.


GetDepartureBoardByCRS implementation

Is there any possibility that the GetDepartureBoardByCRS call could be implemented (as it supports providing larger timeWindow and timeOffset values)?
I've had a look at implementing it myself with intents of doing a PR, but I'm not versed enough with some parts of the API (e.g. SOAPAction header values) to be able to figure out how to implement it.
Thanks.

Hi, I've had a quick look as I thought I was implementing all of the operations provided by the Darwin API. Turns out that is true for the public API but there is a staff API that has additional operations that includes GetDepartureBoardByCRS.
It should be possible to implement it. I'll need to look into the specific details of the API. It might require a bit of work if there is a need to keep the two end points separate.


Add service_account_credentials for Google Cloud and Drive

Adds the ability to configure a service account without needing a file on disk: service_account_credentials (the contents of the service account credentials file) can be put directly into an environment variable. This works for Google Cloud Storage and Google Drive!
As discussed here: https://forum.rclone.org/t/accessing-google-cloud-storage-without-service-account-file/5461/5?u=matt
Includes a mention in the docs.
Thanks again for the pointers. Let me know if there's anything else!

Thanks for the review! Made the relevant changes.

Thanks @mholt looks perfect now :-)

Woo hoo! Thanks Nick!


Yambo phonons

Creation of Class Matdyn:

Read matdyn.modes and store frequencies and eigenvectors.
Plot the phonon dispersion.

Any suggestion to put more features?

Merged into master


epic: investigate test-runner possibilities

Feature Request
The current state of the test runners doesn't let us have a strong and maintainable codebase.
We want to have a solution that allows:

Diff testing (e.g. pass expected value from python / rust and check against the value in cairo)
Parametrized tests (very important!)
Fast testing (sub 10s for a single test)

We moved to Starknet Foundry, for now.

We can mock calls and storage, which is good enough for now
We can use cairo-coverage and cairo-profiler

Still need to explore parametrized and fuzzing in tests
Tests are very long to compile & run: up to 3-4 minutes.
No diff testing


Fixed Typo in Logical Order Test

Updated the test to say
myTest(4) should return "Less than 5"

Closing as there is already a PR open to fix this (#6102). Thanks!


GA script not being rendered properly

For some reason this has been happening the last couple weeks.

Any ideas @SamyPesse @AaronO?

@ekryski I think that happens because you guys have some custom code/plugin, that goes over the last elements and sets style="display: block", which the browser (to my surprise) applies.

Yeah might be that. @daffl ended up fixing it by forking the plugin and making some mods. Thanks for the reply @AaronO!

As a reference, I submitted a PR with the fix to the upstream repository at https://github.com/rtCamp/gitbook-plugin-collapsible-menu/pull/4


[Kundera-datastax] NoHostAvailableException

I remember I already pointed out the same issue with 3 nodes Cassandra setup, but this time the same issue came up with a single node.
Kundera-version: Kundera 2.11
Cassandra:2.0.6
Few records are successfully inserted, but  the problem starts afterwards and getting an exception on client side. I have only persistence.xml file and without any datastax related configuration file which I guess don't require anyway considering the default configurations will be selected (if I am wrong then please tell me what I specify in configuration and where to place such a file). I was reading that Kundera2.11 doesn't work with Cassandra 2.0.6, but how come few records are inserted. Is there any updated Kundera's version to use with Cassandra 2.x ? Exception below, thanks
Exception in thread "main" com.impetus.kundera.KunderaException: com.datastax.driver.core.exceptions.NoHostAvailableException: All host(s) tried for query failed (no host was tried)
at com.impetus.kundera.persistence.EntityManagerImpl.persist(EntityManagerImpl.java:175)
at kunderamiddlewareperformance.performance.Driver.insertData(Driver.java:43)
at kunderamiddlewareperformance.performance.Driver.main(Driver.java:23)
Caused by: com.datastax.driver.core.exceptions.NoHostAvailableException: All host(s) tried for query failed (no host was tried)
at com.datastax.driver.core.exceptions.NoHostAvailableException.copy(NoHostAvailableException.java:64)
at com.datastax.driver.core.ResultSetFuture.extractCauseFromExecutionException(ResultSetFuture.java:269)
at com.datastax.driver.core.Session$Manager.setKeyspace(Session.java:448)
at com.datastax.driver.core.Cluster.connect(Cluster.java:146)
at com.impetus.kundera.client.cassandra.dsdriver.DSClientFactory.getConnection(DSClientFactory.java:272)
at com.impetus.kundera.client.cassandra.dsdriver.DSClient.execute(DSClient.java:517)
at com.impetus.client.cassandra.CassandraClientBase$CQLClient.persist(CassandraClientBase.java:2001)
at com.impetus.kundera.client.cassandra.dsdriver.DSClient.onPersist(DSClient.java:114)
at com.impetus.kundera.client.ClientBase.persist(ClientBase.java:96)
at com.impetus.kundera.lifecycle.states.ManagedState.handleFlush(ManagedState.java:191)
at com.impetus.kundera.graph.Node.flush(Node.java:531)
at com.impetus.kundera.persistence.PersistenceDelegator.flush(PersistenceDelegator.java:408)
at com.impetus.kundera.persistence.PersistenceDelegator.persist(PersistenceDelegator.java:149)
at com.impetus.kundera.persistence.EntityManagerImpl.persist(EntityManagerImpl.java:169)
... 2 more
Caused by: com.datastax.driver.core.exceptions.NoHostAvailableException: All host(s) tried for query failed (no host was tried)
at com.datastax.driver.core.RequestHandler.sendRequest(RequestHandler.java:106)
at com.datastax.driver.core.Session$Manager.execute(Session.java:459)
at com.datastax.driver.core.Session$Manager.executeQuery(Session.java:495)
at com.datastax.driver.core.Session$Manager.setKeyspace(Session.java:442)
... 13 more

@ansarrafique
Cassandra 2.0.4 support with Kundera was added from version 2.11.1. Latest version of Kundera is 2.15. Can you try running your code with kundera-cassandra 2.15 and Cassandra 2.0.4 ?
Chhavi

@ansarrafique
Any updates ?
Chhavi

It works.
Thanks,
BR,
AR
On Fri, Mar 27, 2015 at 12:22 PM, chhavigangwal<EMAIL_ADDRESS>wrote:

@ansarrafique https://github.com/ansarrafique
Any updates ?
Chhavi
—
Reply to this email directly or view it on GitHub
https://github.com/impetus-opensource/Kundera/issues/705#issuecomment-86905673
.


Add asking for save after changes

If the user has changed some of the fields in LifeStyle, PatientHealth and Activity, ask for confirmation if exit is press

implemented


Can I serv from specific proxy ip ?

Is it possible to serv from a specific proxy list or a single ip ?

from proxybroker import Broker
import asyncio

# Define the proxy you want to use
specific_proxy = 'http://<proxy_ip>:<proxy_port>'

# Create a broker instance
broker = Broker()

# Fetch using the specific proxy
async def fetch_using_proxy(proxy):
    # You need to define your own logic here for fetching data
    print(f"Fetching using proxy: {proxy}")

# Start the broker and use the proxy
async def main():
    await fetch_using_proxy(specific_proxy)

# Run the broker
loop = asyncio.get_event_loop()
loop.run_until_complete(main())


Rancher UI crash when mouse hovers over action buttons

Downstream Cluster : Cluster --> Projects/Namespaces
If there is no namespace listed under "Not in a Project" then the UI crashes if mouse hovers over one of the three the action buttons (  //  // ).
By default, it seems, there is always a namespace "local" listed in the subsection "Not in a Project". But if someone moves this namespace to a project or deletes it, and there is no other namespace, then the UI crashes as described.
Even after browser refresh the issue happens again and again until you create a simple namespace which is not assigned to an existing project – the name of the new namespace does not have to be local, you can name it whatever you want. The only requirement for the new namespace is that it does not belong to a project.
Troubleshooting steps:
Make sure that there is no namespace available which does not belong to a project
Hover mouse over one of the action buttons and the UI crashes with
e.availableActions is undefined console.js:31:30
e console.js:31
e client.js:111
Babel 7
errorHandler client.js:113
VueJS 16
setBulkActionOfInterest index.vue:799
mouseover index.vue:1
VueJS 33

I could not replicate this with 2.8-head or 2.7.7-rc4:
https://github.com/rancher/dashboard/assets/40806497/d7808607-3521-4478-a87f-8ca20ddfcec7

Internal reference: SURE-6939

Pass verified in rancher v2.8-head commit ID 436f4de
replicated rancher crash in v2.7.6

created downstream cluster
created project
created namespace
moved namespaces out of 'not in a namespace'
moved test-namespace out of test-project
moused over 'move' button in UI
crash - cannot read properties of undefined ('reading find')

when verifying, repeated step of moving namespaces and mousing over/clicking Move button several times. verified fixed in

existing downstream cluster
new downstream cluster

crash window from v2.7.6:

Side note: the issue is the same of https://github.com/rancher/dashboard/issues/9665 and the error is generated when interacting with the table (because it will trigger the check on row actions).
An unit test is going to be added for the other case.


v-on:imageAdded is not called when an image is pasted into the editor

If I use the image selector, the 'imageAdded' event is called. When I paste into the editor (using chrome),  the image is inserted as a base64 image. Any way to intercept the event?

I tried the same with the quill-image-drop-module module and see the same issue. I am wondering if they are related?

I got the same issue. Anyone found a fix?

Same issue here.

Same issue here.

Does anyone know if this is being worked on? I really don’t want to rewrite my app using a different editor

I eventually gave up and used tiptap

Any solution?

This issue is stale because it has been open for 60 days with no activity.

This issue was closed because it has been inactive for 7 days since being marked as stale.

2021 and still not fixed


Availability API: Single location failure returns 500 error

Time Tracking: MA-83
When a single location is unavailable, it is causing the Availability API to return a 500 error.
Reported in testing. Location 14 returning error 503 "Realtime count data is unavailable"
This is done when:

[x] Single location availability failure handled, allowing the Availability API to return other successfully fetched locations

Fixed on CampusBusyness API V1
Moving this issue & testing to #1465


kong(work in docker) can't log in /usr/local/kong/logs/error.log

Is there an existing issue for this?

[X] I have searched the existing issues

Kong version ($ kong version)
Kong <IP_ADDRESS>-alpine
Current Behavior
my plugin code:
function DemoHandler:access(conf)
DemoHandler.super.access(self)
kong.log("hello", "word")
end
when i access just can read  ' 2022/08/30 03:09:44 [notice] 2090#0: *27 [kong] handler.lua:166 [demo] helloworld, client: <IP_ADDRESS>, server: kong, request: "POST /docker/test HTTP/1.1", host: "<IP_ADDRESS>:8000" ' in docker logs like this

but i cant't in container /usr/local/kong/logs/error.log to read my log
this error.log is empty
this is my kong.conf

Expected Behavior
No response
Steps To Reproduce
No response
Anything else?
No response

Hello @Canon4G,
your logs are outputed in the file logs/error.log correctly, however, by default the file error.log points to /dev/stderr, so anything that is printed there is automatically redirected to standard error:
bash-5.1$ ls -l /usr/local/kong/logs/error.log
lrwxrwxrwx    1 kong     nogroup         11 Aug 30 09:06 /usr/local/kong/logs/error.log -> /dev/stderr

and this is why you are currently able to see the log output in docker logs.
It is possible to configure a different file as the target for the proxy and admin error logs via the configuration parameters proxy_error_log and admin_error_log as in the following example:
proxy_error_log=logs/myerror.log
However this is not recommended because the container may easily fill the available storage and this can result in failures and downtime on the gateway.

thanks


fix: Logging: Redact Email Address & Easy (Un)Redact

Redacts email address in the logs for initial setup and options flow handler.
Also simplifies the process for controlling log redaction. Users can now toggle log redaction by setting REDACT_LOGS in const.py to False and restart Home Assistant. To enable redaction again, simply set REDACT_LOGS back to True and restart Home Assistant.

Cool would be to add it in the https://developers.home-assistant.io/docs/config_entries_options_flow_handler to be able to dis/-enable it without manually changing files.

Good idea. I can work on that. Luckily all the work in this PR is needed anyway for that. Marking as draft for now while I put it together.


CLI memory limits not reflected in App Automatically

Describe the bug
When I set memory_mib on the CLI,  orb config set memory_mib 6000 and the restart orbstack from the CLI, I would expect the slider in the desktop app to reflect this new value.
I do see the System tab notice that we shut down:

But after clicking "Start", the new memory limits are not reflected:

If I ⌘-Q quit the app though, then reopen the app, the changes will be present.
To Reproduce

Open up the System panel ⌘ ,
Click System
orb config set memory_mib 7000
orb stop
orb start

The Memory limit slider will not reflect the limit from set memory_mib.
Expected behavior
The slider should be updated with what is not the configured value.
Diagnostic report (required)
OrbStack info:
Version: 1.0.1
Commit: 0d4cdcf185489f992cf8e3187884f11f4feab1aa (v1.0.1)
System info:
macOS: 13.6 (22G120)
CPU: arm64, 12 cores
CPU model: Apple M2 Pro
Model: Mac14,10
Memory: 32 GiB
Full report: https://orbstack.dev/_admin/diag/orbstack-diagreport_2023-10-23T18-51-11.725065Z.zip

Screenshots and additional context (optional)
No response

Fixed for the next version.

Thanks for the very quick fix!

Released to the Canary update channel in v1.1.0 Canary 1.

Released in v1.1.0. Blog post


Follow up to handling link shares

Handle a few edge cases with link shares. Also handle empty link shares, plus inheritence works a bit differently for link shares compared to permissions.

Does this PR need a docs update or release note?

[x] :white_check_mark: Yes, it's included
[ ] :clock1: Yes, but in a later PR
[ ] :no_entry: No

Type of change

[x] :sunflower: Feature
[ ] :bug: Bugfix
[ ] :world_map: Documentation
[ ] :robot: Supportability/Tests
[ ] :computer: CI/Deployment
[ ] :broom: Tech Debt/Cleanup

Issue(s)

https://github.com/alcionai/corso/pull/3655
https://github.com/alcionai/corso/issues/3605

Test Plan

[ ] :muscle: Manual
[x] :zap: Unit test
[x] :green_heart: E2E

Oh, aren't there a couple tests that are Skipped due to this? Can we un-skip those now?

I don't think so. I don't think we had even considered link shares previously. /cc @ryanfkeepers


handleError swallows exceptions

we're using bugsnag for tracking / reporting js and ruby errors. when rendering errors occur on the front end the exceptions are caught and dumped out to console.error but the exceptions aren't rethrown so bugsnag never sees them and we have no visibility into what's going on with our broken react code.
i'm thinking that it would be useful to either:

add an option to re-throw exceptions, or
add an optional callback for handleError to call.

i'm happy to implement one (or both) of these in a pr, i just wanted to check first to understand the reason this was happening to make sure i wasn't introducing more issues.

@modosc Great idea! Great feature! Let's do this!
Either option #1 or #2 (or both) sounds good. If you can post a couple code samples of how you'd like to do this, we can probably decide.
I can see advantages to either.
We also need to consider server rendering. On the server side, we don't want to just throw.
We should also add file to docs/additional_reading.

@modosc Send me your contact info and I can add you to our slack room.

@modosc Any word on this? I've got some others that are looking for tasks to complete. This one should be relatively easy.

@justin808 sorry, i haven't had time to sort this out, please feel free to assign it off.

@modosc I'm still considering implementing this one. I think we can add a JS option to do this pretty easily, for either 1) or 2). We'd add something as a supported option: https://github.com/shakacode/react_on_rails/blob/master/node_package%2Fsrc%2FReactOnRails.js#L55
and this can be set globally in any of the files loaded by webpack.

@modosc Any more info on this one:

i'm happy to implement one (or both) of these in a pr, i just wanted to check first to understand the reason this was happening to make sure i wasn't introducing more issues.

I'm thinking this one is pretty important.

@modosc @jbhatab We do log errors on the client side to level error, and I believe we do that for server rendering as well. So if the bug tracking system just looks for log level of error, then we don't need to just throw exceptions and crash.

We're using honey badger for https://www.friendsandguests.com/listings/7999 and it's working fine with the current react on rails.


current application constants wouldn't be better in system core?

Not an issue, just asking, I'm looking a trimmed down version of CI and its bootstrap sequence, the application/config/constants.php is one of the first files needed and loaded by the core (core/CodeIgniter.php), but the defines within looks to me more like system defines not application, wouldn't be better moving those within the core?
Something like that?
if (file_exists(APPPATH.'config/'.ENVIRONMENT.'/constants.php'))
{
	require_once(APPPATH.'config/'.ENVIRONMENT.'/constants.php');
}

if (file_exists(APPPATH.'config/constants.php'))
{
	require_once(APPPATH.'config/constants.php');
}

require_once(BASEPATH.'core/Constants.php');

Shouldn't break anything.

I think not, because you can has a shared core...

Thanks to the defined in the current config/constants.php any application would be still able to override with the needed values.
Currently all the applications need to have this file, I wonder how many application really need to change those defines.

Even if they look like system defines, few of these constants are actually used by the framework itself. In fact, I believe only one of them is currently used and it is specifically a configuration one ...
Either way, this would be change for the sake of change, which we don't do.


Use upstream tape

Coverage remained the same at 97.931% when pulling 3cec863b838943d747d1497ea879624849245579 on upstream-tape into 0ed574ccf817b7a0dfba4b65dc65cca1597665ba on master.


WslRegisterDistribution failed with error: 0x80070057

Windows Version
Microsoft Windows [Version 10.0.22621.1265]
WSL Version
<IP_ADDRESS>
Are you using WSL 1 or WSL 2?

[x] WSL 2
[ ] WSL 1

Kernel Version
Linux version <IP_ADDRESS>-microsoft-standard-WSL2 (oe-user@oe-host) (x86_64-msft-linux-gcc (GCC) 9.3.0, GNU ld (GNU Binutils) <IP_ADDRESS>00220) #1 SMP Fri Jan 27 02:56:13 UTC 2023
Distro Version
Arch Linux latest
Other Software
No response
Repro Steps
I followed the DistroLauncher guide for creating a launcher for a custom distro and I was able to get the final appx also with trusted certificate.
When I double click on DistroLauncher-Appx_<IP_ADDRESS>_x64.appx a window is opened with Install button. I click there and it installs. After that, I launch the Distro and the terminal opened with the following message:
Installing, this may take a few minutes...
WslRegisterDistribution failed with error: 0x80070057
Error: 0x80070057 The parameter is incorrect.

Press any key to continue...

Is this error related to a bug of launcher.exe? How can I solve it?
Expected Behavior
Getting the shell of the distro.
Actual Behavior
Error:
Installing, this may take a few minutes...
WslRegisterDistribution failed with error: 0x80070057
Error: 0x80070057 The parameter is incorrect.

Press any key to continue...

Diagnostic Logs
WslLogs-2023-03-11_04-10-30.zip

Solved: the issue is related to the DistributionInfo.h in Name. It must not contain a string with space.


dependabot: Add config file.

Currently, dependabot will automatically open PRs to address
reported security vulnerabilities in packages. I'm interested to see
if it can help us be better about keeping our packages up-to-date in
general.
There are plenty of config options we can choose from (see the
linked doc). For now, I'm just curious to see what it does with this
simple config.

Thanks for the review!
We can always lower open-pull-requests-limit down from 5 to reduce noise (5 is the default, but I added it for explicitness so it's visible as something that's super simple to change).

I like that Dependabot links (and sometimes quotes) the changelog for the package; it saves some clicking around in GitHub which can be slow.


Assign grad_norm for logging only if it's a single element tensor

What does this PR do?
We have a condition check if the grad_norm tensor is a single element or not. If it's not we convert grad_norm as list.
(https://github.com/huggingface/optimum-habana/pull/938)
But for logging, we don't use grad_norm if it's a list so there's no point to get grad_norm list.
I changed condition to check if grad_norm is a list just assign None.
We see that this list conversion causes a perf issue.

Fixes # (issue)
Before submitting

[ ] This PR fixes a typo or improves the docs (you can dismiss the other checks if that's the case).
[ ] Did you make sure to update the documentation with your changes?
[ ] Did you write any new necessary tests?

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint. The docs are available until 30 days after the last update.


Add prometheus metrics endpoint

📝 Summary
An initial implementation of some prometheus metrics for MEV Boost
⛱ Motivation and Context
I want to be able to monitor my mev-boost container with prometheus to get better operational insight
📚 References
https://github.com/flashbots/mev-boost/issues/253
✅ I have run these commands

[✔] go mod tidy
[✔] make test
[✔] make lint
[❔] make run-mergemock-integration

Getting an error back from make run-mergemock-integration, but not sure if it's related to my change
ERROR  [2022-09-05T19:09:20+01:00] Unable to retrieve proposal payload           error="builder REST API returned non-200 status code: 204" slot="5"
make: *** [run-mergemock-integration] Error 1```

what's the progress on this?  we also would appreciate having prometheus metrics on boost

These changes are deep and extensive into the core system and logic. Considering that mev-boost is run at 50% of all validators, it is too risky and impactful for adding a large amount of new logic in the core flows at the current time.
Perhaps consider collecting the metrics from the logs, or thinking about a possible plugin interface. 🤔

These changes are deep and extensive into the core system and logic. Considering that mev-boost is run at 50% of all validators, it is too risky and impactful for adding a large amount of new logic in the core flows at the current time.
Perhaps consider collecting the metrics from the logs, or thinking about a possible plugin interface. 🤔

@metachris as this PR is implemented as is, seems this would've been behind a -metrics flag (similar to prysm and teku have their prometheus metrics behind a flag on a separate metrics port).  Making the metrics opt-in and improving the metrics collected, I think this would be a useful feature to add native prometheus metrics

@ybstaked @metachris happy to reopen and rebase this PR if there's any will to get it implemented
Otherwise the suggestion is the approach outlined in #370

I sincerely appreciate the effort in adding the prometheus support. As mentioned before, the changes reach too deep into the core program flow to merge and force on a majority of proposers, without extensive review and in particular discussions beforehand. If you feel you'd like to pursue this, then please open an issue and continue the conversation there.


Developer Description changed from Multiline to TextArea attribute

#127

Thanks for the PR! Looks good to me. Merging to canary.


zoom factor

Could be great have a zoom factor to show bigger buttons

Hi @matzrm
Text size of button? or button?

Button size but also text size should adjust to the new layout.
Il giorno mar 6 feb 2024 alle 12:57 Mohsen @.***> ha
scritto:

Hi @matzrm https://github.com/matzrm
Text size of button? or button?
—
Reply to this email directly, view it on GitHub
https://github.com/mohsen77sk/angular-touch-keyboard/issues/16#issuecomment-1929366170,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACCRYV476VBM72RIO6E7BTLYSILCJAVCNFSM6AAAAABCRLOY62VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMRZGM3DMMJXGA
.
You are receiving this because you were mentioned.Message ID:
@.***>


Code folding

Code folding should be implemented

I really like Light Table. Every code editor i have ever used for the past 10 years has had Code Folding. I have become accustomed to using it day to day as I write code. I really need code folding in Light Table in order for it to be complete.

IT WORKS
I see that it is being implemented. IF my cursor is on a line of code that ends in a curly brace (javascript) and I hit "ctrl-+" it will fold the code. That is good enough to hold me over :+1:


Limit what a customer sees in the listed API

Is your feature request related to a problem?
I would like to present an API portal to multiple customers.
The company I am at has different customers that use different parts of the API.
For example:
API 1

route 1 (used by client 1)
route 2 (used by client 2)
route 3 (internal)

The internal one should be invisible, and the other routes should only show up to the customers that have access to it.

Describe the solution you'd like
I was thinking of adding customer TAGS to the API.
Example:
API 1

route 1 (tag client 1)
route 2 (tag client 2)
route 3 (tag internal)

Then through SSO, have the frontend only show tags based on e-mail address.
As far as I know, there is no way of doing this.
Describe alternatives you've considered
I've also considered deleting from API specs the routes that do not have the client specific tags, and building a different api portal for each client. This still needs to be tested.
Additional context
I believe having a way to show only some api's to different companies makes sense, even more on legacy apps, where API's are big, and not all of them are used by all customers.

Hi @jeffpascal, if I'm understanding correctly you're wanting to gate access to specific endpoints/routes? This is outside the scope of the OpenAPI docs plugin but, FWIW, you might want to explore a server-side auth/authz solution capable of proxying requests to your Docusaurus site, e.g. Netlify auth (JWT), AWS Cognito or Google Identity Toolkit + API Gateway and cloud storage.


Maya: Load Assembly fix invalid imports

Changelog Description
Refactors imports so they are now correct.
Additional info
Likely refactoring of the code disrupted this before.
The bug was reported on discord here
Testing notes:

Publish and load setdress.
Publish and load assembly.

Yes, no idea whether assembly should still work or not. This was just quickly fixing the reported issue, we can create an issue to track what the new error is and create a PR for that then? I don't have much incentive to really dig through assembly since we're not using it on our end but feel free to push fixes into this branch PR if you'd want to continue fixes here.

it seems due to GPR nodes doesnt have cbIds it fails during validation phase...when trying to Publish it

I believe this just means you'd need to re-save your scene and try again? :) IDs get added on scene save.
The documentation at the top of the validator, which you have collapsed for some reason should state that too.

it seems due to GPR nodes doesnt have cbIds it fails during validation phase...when trying to Publish it

I believe this just means you'd need to re-save your scene and try again? :) IDs get added on scene save. The documentation at the top of the validator, which you have collapsed for some reason should state that too.

What I remember now is that  I have triggered Repair Action for IDs and it didnt help either...

The loaded cube models, where did they come from? It seems to complain about the referenced nodes to not have cbId attributes. In particular the couch (modelMain2).

They are all loaded via OP Loader so they have been properly published before...
As I understand an Assembly family being made from other loaded assets (something like multi user collaboration on model composed of multiple model parts aka published asset models.)
Am I correct?

Speaking of Assembly instance there is also Assembly Model Transforms validator for any transforms present on the Transform nodes.
It doesnt seem much sensible to be forced to freeze all transform on any Assembly part. Imagine several artist collaborating on multiple parts of the Assembly being forced by OP to freeze all transforms when publishing the models. Pretty limiting imho.
@BigRoy  What do you think?

Speaking of Assembly instance there is also Assembly Model Transforms validator for any transforms present on the Transform nodes.

I guess this is also for another issue.

@LiborBatek could you test for the original issue and report back?
We'll merge this PR if the original issue is resolved and tackle other issues separately.

@LiborBatek that issue has been logged with #4876.
Think we should merge this PR and tackle the load issue separately.


Fixed AKS version issues with Windows Container CLI Doc

Updated the doc to use a supported version and include a note about finding the supported version
Updated the doc to callout that sometimes a windows container may not be started by the time the external IP has been assigned

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

#sign-off


Remove any trailing dashes in 53-char helm release name

Closes #2
helm release names must have max length of 53 chars, due to underlying k8s service name limitations.
Ref: https://github.com/helm/helm/blob/main/pkg/action/install.go#L62
This may be relaxed in future, see: https://github.com/helm/helm/pull/8384
Truncating the name to fit this constraint, and converting non-word chars to dashes, can leave us with a release name ending in one or more dashes, which is not permitted.
The quick-and-dirty solution is to remove any trailing dashes after truncation.

@svendlarsen I used sub and a regex, rather than delete_suffix to cover cases of more than one trailing dash. For example a conversion of fifty_one_chars_then/#123_etc could end in fifty-one-chars-then--.
As to ruby versions, we do not target anything in particular, but a three year-old version would be quite reasonable for future reference :smile_cat:


Need new version 0.3.1 for packages upgraded

Hi @chyiiiiiiiiiiii, version 0.3.1 has been published.


Add support for variables

The Eval function should also accept a hashmap of string -> float64 for passing variables and their values in. This should use a symboltable under the covers.
I will likely work on this feature.

This looks a bit hairy at the moment, I didn't merge it in, only your trig code.

This code has been pulled in - thanks!


test coverage

Are there plans to add more test coverage?
https://github.com/Day8/re-frame/blob/master/project.clj#L25

Patches welcome :)

Remembering that tests have a maintenance cost too, I'm not sure which parts @mike-thompson-day8 would want tests written for.

Since release, I don't remember there being a single bug, which empirically indicates (to me) that the current test coverage is broadly right :-)
Having said that, tests are often more about future bugs  (I'm actually very pro unit tests,  but not compulsively or systemically so).  I just hasn't felt as if there were many parts of the code which were complicated enough to warrant tests (which, as Daniel said, do cost a lot).   I seem to remember that the on-change middleware was the only function where I really felt like a test was necessary.


I want to Create a function to add bold syntax to a string along with a test case for this function

completed 10/9


Easier submission of changesets

Description
Currently after writing a changeset description in the box, the user needs to reach for their mouse and click on "Upload changes". Instead it should be possible to do it by pressing Ctrl + Enter. This is similar behavior to most forms, where pressing Ctrl + Enter submits the form.
Screenshots
No response

Some previous discussion in #4234.

#7108 too

Great - thanks - I was thinking this might be a duplicate and was just beginning to search - I appreciate the pointers. Closing as duplicate. If anyone wants to revisit the prior decision on this, I'd recommend opening a discussion thread on the topic.


ModelAfterValidator causing warnings from Pylance and mypy

Initial Checks

[X] I confirm that I'm using Pydantic V2 installed directly from the main branch, or equivalent

Description
I want to use an ModelAvterValidator via the model_validator decorator, however, both Pylance and mypy are issuing warnings when doing so. To make sure I was using it correctly, I tried using the example code from the documentation and I am experiencing the same issues there.
The code below results in the following two warnings:
Argument 1 has incompatible type "Callable[[UserModel, UserModel], Any]"; expected "Union[ModelAfterValidator, ModelAfterValidatorWithoutInfo]"  [arg-type] (mypy)

Argument of type "(cls: Self@UserModel, m: UserModel) -> UserModel" cannot be assigned to parameter of type "_AnyModeAfterValidator"
  Type "(cls: Self@UserModel, m: UserModel) -> UserModel" cannot be assigned to type "_AnyModeAfterValidator"
    Type "(cls: Self@UserModel, m: UserModel) -> UserModel" cannot be assigned to type "(self: _ModelType@__call__, __info: ValidationInfo) -> _ModelType@__call__"
      Parameter name mismatch: "self" versus "cls"
      Parameter 2: type "ValidationInfo" cannot be assigned to type "UserModel"
        "ValidationInfo" is incompatible with "UserModel"
    Type "(cls: Self@UserModel, m: UserModel) -> UserModel" cannot be assigned to type "(self: _ModelType@__call__) -> _ModelType@__call__"
      Parameter name mismatch: "self" versus "cls" (pylance)

When changing the parameter name cls to self as suggested by Pylance, the corresponding lines in the latter warning disappear, but nothing else happens and I am not sure whether that is what I am supposed to do there.
As my IDE I use VS Code OSS with the python, pylance, and mypy extensions, among others.
Example Code
from pydantic import BaseModel, model_validator

class UserModel(BaseModel):
    username: str
    password1: str
    password2: str

    @model_validator(mode="after")
    def check_passwords_match(cls, m: "UserModel"):
        pw1 = m.password1
        pw2 = m.password2
        if pw1 is not None and pw2 is not None and pw1 != pw2:
            raise ValueError("passwords do not match")
        return m

Python, Pydantic & OS Version
pydantic version: 2.0b3
pydantic-core version: 0.39.0 release build profile
install path: <path-to-workspace>/env/lib/python3.11/site-packages/pydantic
python version: 3.11.3 (main, Jun  5 2023, 09:32:32) [GCC 13.1.1 20230429]
platform: Linux-6.3.9-arch1-1-x86_64-with-glibc2.37
optional deps. installed: ['typing-extensions']

Selected Assignee: @hramezani

You can add the decorator @classmethod, and the IDE will be happy. 🙏
We've already documented this behavior.

Thank you, it seems I missed this documentation then.

@Kludex even with the @classmethod decorator, mypy is still unhappy:
from pydantic import BaseModel, model_validator

class UserModel(BaseModel):
    username: str
    password1: str
    password2: str

    @model_validator(mode='after')
    @classmethod
    def check_passwords_match(cls, m: 'UserModel'):
        pw1 = m.password1
        pw2 = m.password2
        if pw1 is not None and pw2 is not None and pw1 != pw2:
            raise ValueError('passwords do not match')
        return m

error: Argument 1 has incompatible type "Callable[[type[UserModel], UserModel], Any]"; expected "ModelAfterValidator | ModelAfterValidatorWithoutInfo"  [arg-type]

(example taken from docs, mypy 1.4.1)
Looking at the excepted signatures:
https://github.com/pydantic/pydantic/blob/e0c0fe8cd6b6a1a5fdd43ab92d9814b278e324ad/pydantic/functional_validators.py#L402-L422
They doesn't seem to match the one used in the example

Right. My bad. I'm going to check properly.

Can you use this instead?
from pydantic import BaseModel, model_validator

class UserModel(BaseModel):
    username: str
    password1: str
    password2: str

    @model_validator(mode="after")
    def check_passwords_match(self) -> "UserModel":
        if self.password1 != self.password2:
            raise ValueError("passwords do not match")
        return self

It seems like this works with pyright but not mypy. @Kludex  if you didn't already try the above, can you look into why it works with pyright but not mypy? It might be worth asking on the mypy issue tracker.

Can you use this instead?
from pydantic import BaseModel, model_validator

class UserModel(BaseModel):
    username: str
    password1: str
    password2: str

    @model_validator(mode="after")
    def check_passwords_match(self) -> "UserModel":
        if self.password1 != self.password2:
            raise ValueError("passwords do not match")
        return self

no warning with pyright.

+1, played around with this for a bit but can't get any model validators to work with mypy on V2

+1, @adriangb your example fails for me with mypy '1.4.0' with
Argument 1 has incompatible type "Callable[[type[UserModel]], UserModel]"; expected "ModelAfterValidator | ModelAfterValidatorWithoutInfo"  [arg-type]

Note only mode="after" i've found problematic, mode="before" seems to work perfectly :1st_place_medal:

Reported on mypy for now: https://github.com/python/mypy/issues/15620

I think https://github.com/pydantic/pydantic/pull/6514 will fix this

@adriangb I think this is still acting up after #6514.
I'm running main branch and mypy 1.4.1. See reproduction below.
import typing as tp
from pydantic import BaseModel, model_validator

class Foo(BaseModel):
    foo: str

    def bar(self):
        return self.foo

    @model_validator(mode="after")
    def val(self):
        print(
            self.bar()
        )  # ERR Missing positional argument "self" in call to "bar"  [call-arg] (mypy)

        tp.reveal_type(self)
        # Revealed type is "Type[backend.mypy_playground.Foo]" (mypy)

        return self

Foo(foo="FOO")

# Correct at runtime,
# prints "FOO"

I can't reproduce it with main, and mypy 1.4.1. It works properly here.

My bad, looks like my mypy cache was playing up, sorry.
Tested in a clean repo and seems to be working!

Unfortunately, usage of @model_validator(mode="after") is still causing Mypy issues, even after #6514.
from pydantic import BaseModel, model_validator

class Foo(BaseModel):
    x: int

    @model_validator(mode="after")  # error: Cannot infer function type argument  [misc]
    def print_x(self) -> "Foo":
        print(f"{self.x=}")
        return self  # error: Incompatible return value type (got "type[Foo]", expected "Foo")  [return-value]

Foo(x=1)  # prints "self.x=1"

Version info:
             pydantic version: 2.0.3
        pydantic-core version: 2.3.0 release build profile
                 install path: /path/to/.venv/lib/python3.9/site-packages/pydantic
               python version: 3.9.17 (main, Jun 24 2023, 20:40:40)  [GCC 13.1.1 20230429]
                     platform: Linux-6.4.3-arch1-1-x86_64-with-glibc2.37
     optional deps. installed: ['typing-extensions']

Also reproduced with:
               python version: 3.11.4 (main, Jun 24 2023, 20:38:45) [GCC 13.1.1 20230429]

Tested both with Mypy 1.4.1.

It must be an issue with your mypy config. I just copied your example to a test.py file and ran it with both mypy 1.1.1 and 1.4.1:
pydantic on  validators [$?] via 🐍 v3.10.9 (.venv) on ☁<EMAIL_ADDRESS>❯ mypy -V
mypy 1.1.1 (compiled: yes)

pydantic on  validators [$?] via 🐍 v3.10.9 (.venv) on ☁<EMAIL_ADDRESS>❯ mypy test.py
Success: no issues found in 1 source file

pydantic on  validators [$?] via 🐍 v3.10.9 (.venv) on ☁<EMAIL_ADDRESS>❯ pip install -U mypy
Requirement already satisfied: mypy in ./.venv/lib/python3.10/site-packages (1.1.1)
...
Successfully installed mypy-1.4.1

pydantic on  validators [$?] via 🐍 v3.10.9 (.venv) on ☁<EMAIL_ADDRESS>❯ mypy test.py
Success: no issues found in 1 source file

pydantic on  validators [$?] via 🐍 v3.10.9 (.venv) on ☁<EMAIL_ADDRESS>took 4s

@adriangb Ah, good call! It turns out that the errors only come up in conjunction with the Pydantic Mypy plugin. I deactivated it and the errors disappeared. Can you reproduce them, if you enable the plugin? If so, should I open a separate issue for this?

Yes please open a separate issue!


Fail if file does not upload

General Checkups

[*] Have you checked that there aren't other open pull requests for the same issue/update/change?
[*] If your code includes new features and not just bug fixes/copy editing: Did you include new tests?

Description
Does a quick check to see if the file exists, and if not, set the database accordingly and return a 400 error.
Related Issue
#884

Closing as obsolete, issue is fixed by #889


Feature: stylelint

Apply Stylelint rules from mediaelement-plugins to this project

Coverage remained the same at 73.832% when pulling 58fa0e72493449de3d4cde5c1f069eed3a1245e2 on marcobiedermann:feature/stylelint into 4c00dd8239397207f040a610191a59a194582107 on mediaelement:master.

PR merged. Thanks


hacktoberfest

i am just adding new file

@Princekumaraj - Star this repository

why u closed this pr without accepting it ?

@Princekumaraj you need to follow the readme and image rule : #2 thank you. Any help needed, feel free to ask.

can u now add my pr

@Princekumaraj #164


Localise api calls

Set the Accept-Language header based on the current locale.

Related to https://github.com/ministryofjustice/prison-visits-2/pull/263


Only take first 500 syntax errors

Too many syntax errors make some editor/ide slow, fix #3434.

I think it would be good to add a comment explaining why the .take(500) exists. Other than that, looks good!

I think it would be good to add a comment explaining why the .take(500) exists. Other than that, looks good!

done

Thanks!
bors r+