Java maven artifact is the scala version

hi all,
I ran into the same issue as described in this closed ticket: trying to use the Java version of the Zoho CRM SDK v6 in the pom file:
    <dependency>
      <groupId>com.zoho.crm</groupId>
      <artifactId>zohocrmsdk-6-0</artifactId>
      <version>1.0.0</version>
    </dependency>

results in it downloading the scala version instead (the scala one is actually version 2.0.0).
This is because the Maven repository at https://repo1.maven.org/maven2/com/zoho/crm/zohocrmsdk-6-0/1.0.0/ contains the scala versions, but I don't know if anyone can upload files there. There is at least a correct .jar and .pom in Zoho's own maven.zohodl.com repository, so those can be used as a workaround.

Hi @Luthien-in-edhil, The Maven repository contains the Scala SDK (zohocrmsdk-6-0). However, our Zoho Maven (https://maven.zohodl.com/) repository hosts the Java SDK (previously zohocrmsdk-6-0, currently renamed to zohocrm-java-sdk-6-0 with an updated artifactId).
When installing from the Maven repository using zohocrmsdk-6-0, the Scala SDK  will be installed unless you had first added the repository and then installed the SDK. Alternatively, if the Scala SDK is present in the cache, you will need to clear the cache before installing the Java SDK.
To avoid this confusion, we have updated the artifactId of the Java SDK to zohocrm-java-sdk-6-0 in Zoho's Maven repository.  If you have already installed the Scala SDK, kindly add zohocrm-java-sdk-6-0 to your pom.xml file and rebuild the project.  This action will uninstall the Scala SDK and replace it with the Java SDK.
Kindly refer here for more details.

Hi @raja-7453 thanks for answering.
Thanks for renaming the artifactID in the Zoho Maven repository. Hopefully it is picked up then by maven, but that does not alter the fact (it's even documented on the Zoho website: java version vs scala version) that 1.0.0 refers to the JAVA version, and hence the Maven repository for<EMAIL_ADDRESS>should contain the JAVA version as well, all the more because the scala version is already present on<EMAIL_ADDRESS>Until that issue is addressed, people looking for the java SDK will get the scala version instead.

Hi @Luthien-in-edhil We have updated our help doc with the correct name for the JAR file.
Please use zohocrm-java-sdk-6-0 for Java SDK, and  zohocrmsdk-6-0 for Scala SDK.


Release azure-cli-cloud 2.0.3

Reviewers, please verify the following for this PR:

[ ] The PR title has format Release <component-name> <version>.
[ ] setup.py has been modified with the same version as in the PR title.
[ ] HISTORY.rst has been modified with appropriate release notes.
[ ] If releasing azure-cli or azure-cli-core, __version__ defined in __init__.py should also be modified to match.

Started releasing azure-cli-cloud 2.0.3...

Release of 'azure-cli-cloud' with version '2.0.3' successful. View at https://pypi.python.org/pypi/azure-cli-cloud/2.0.3.

GitHub release created. https://github.com/Azure/azure-cli/releases.


Remove dragImage assets and refs

Remove all drag preview PNGs and references to obsolete dragImage.

👍 That's what I'm talking about!

It's very gratifying!


EXC_BAD_ACCESS on iPhone 4 running 8.0

[[[GPUImageContext sharedImageProcessingContext] context] renderbufferStorage:GL_RENDERBUFFER fromDrawable:(CAEAGLLayer*)self.layer];
When I compile iPhone from Xcode I get this error on this line in GPUImageView
void runSynchronouslyOnVideoProcessingQueue(void (^block)(void))
{
dispatch_queue_t videoProcessingQueue = [GPUImageContext sharedContextQueue];
#if !OS_OBJECT_USE_OBJC
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wdeprecated-declarations"
if (dispatch_get_current_queue() == videoProcessingQueue)
#pragma clang diagnostic pop
#else
if (dispatch_get_specific([GPUImageContext contextKey]))
#endif
{
block();
}else
{

  dispatch_sync(videoProcessingQueue, block); ON THIS LINE TOO

}

}
What is the problem?

I get this error,How did you solve it ?


Return msg with the error

When throwing an error, the msg object shoulb be thrown as well.
This allow the use of Catch node in the flow.

Nice, Thanks for the PR.

This is live


Why the samples are not as good as nv-waveglow?

I'm not sure what configuration you use to train both networks.
However, it's reasonable to get a lower quality if you are comparing to the official samples Nvidia provides.
They use 8 K80 to afford a much larger batch size for training.
SGD with small batch size can be viewed as adding additional noise to the gradient when training.
Such noise sometimes helps generality but on the other side hinders the model from reaching the local minimum.
Therefore we may converge (get stuck) before reaching the max quality.

Issue closed due to inactivity.


pywt.swt_max_level

Hi,
I am getting different results using pywt.swt_max_level function. If I pass to this function the value 2048  the result is 11 since log2(2048)=11 as expected but if I pass the value 1000 the result is 3 that is equivalent to the log10(1000), why?
thanks

That is because 1000 is divisible by 8 (23), but not by 16 (24).  If you pad the size up to 1024 you will be able to do 10 levels.  numpy.pad is one function that could be used to do the padding.

Thanks.
I am a bit confused.
Are swt transform and modwt (matlab) transform different?  Seems that for a complete decomposition of j levels swt requires N (sample size) to be a multiple of 2^j  but I thought it was well-defined for every N.

Yes they are different.  The swt in PyWavelets is like swt in Matlab, where the size must also be an integer multiple of 2^n for an n-level transform. (Although I should mention that swt is not currently guaranteed to give exactly the same output as Matlab.  Only the dwt/idwt and cwt routines are explicitly tested as matching Matlab's output for the corresponding routines).  The swt and iswt routines are mainly tested in terms of satisfying the perfect reconstruction property for a round-trip transform.
I think we would be interested in having MODWT as well, but no one has implemented it yet.  See further related discussion in #51


Update Model.supporting(feature) to check instances

The Model.supporting(feature) method currently only checks class-level supports and ignores the instance level.
For example if I have a set of VMs that are all powered on:
>> Vm.pluck(:power_state).uniq
=> ["on"]

# Calling .supporting returns all instances as supporting start
>> Vm.supporting(:start).count
=> 14336

# But if we check the instances that support start, none do
>> Vm.all.select { |vm| vm.supports?(:start) }
=> []

I think any supports_feature method that returns instances should check if those instances support the feature.  If for performance we only want to check the class level we can use a method that returns the classes which support the feature and leave it up to the caller to query instances on their own, that way it doesn't look like we're checking instance-level when we really aren't.
@kbrock @Fryguy thoughts?

Checking instance level supports does have poor performance, but if you need to check it you need to check it

Follow-up to: https://github.com/ManageIQ/manageiq-ui-classic/pull/8129#discussion_r809506058

@miq-bot cross-repo-tests manageiq-api, manageiq-ui-classic

This is a great idea.  We already have the "class-level" check via subclasses_supporting, so if we were relying on that somewhere, it should be a relatively easy change.

I also noticed that you can't call .supporting() on e.g. ManageIQ::Providers::Vmware::InfraManager::Vm.supporting(:start) because subclasses_supporting doesn't include the class you called it on.

In the ancestry gem, we use the term subtree, to say "myself and my descendants".  I'd be ok with adding a subtree_supporting for cases where it makes sense.  Either that or maybe a subtree or include_self parameter or something to subclasses_supporting.


Arnav

[ ] Update User Login Page
[ ] Complete Recruiter Login Page
[ ] Complete Organizer Login Page
[ ] Complete Backend Class Diagram
[ ] Look through entire flow and plan out what's on the 5 minute video4
[ ] Start working on integrating other endpoints

[ ] Recruiter Redirect
[ ] Dynamic population of student profile
[ ] Dynamic population of recruiter profile
[ ] Dynamic population of organizer profile

[ ] Keep track of good data to put in atlas


Build.gradle error

compile 'com.amirarcane.lock-screen:lockscreen:1.0.0'
unable to add Error:(49, 13) Failed to resolve: com.amirarcane.lock-screen:lockscreen:1.0.0

You are right, Thanks for issuing.
Check it again.


Add blog.shr4pnel.com

Added my blog to the list. website is hosted at https://blog.shr4pnel.com and the link to xxiivv is in the middle of the page under the "socials" header.
cheers!

I currently don't add blogs to the webring, I try to focus on wikis-style sites with content that is not timestamped. Just a head's up the domain gives a security warning at the moment, maybe an https issue?

apologies for the PR in this case. could you let me know if you're still getting the TLS error? seems all fine on my end through all my devices and lynx.

@shrapnelnet I'm not getting any TLS error, if that helps.


Upgrade to Elasticsearch 2.0.0

This PR updates the Elasticsearch Metrics reporter to the Elasticsearch 2.0.0 and along the way fixes some minor compiler warnings.

Works like a charm. Thanks @joschi!


Parse one row at a time?

Dear Mr. Borowski,
first of all, thank you so much for developing this useful and performant library!
It's Wednesday and not Monday, but can I ask you a question anyway?
I need to process a large CSV file (5000+ rows), so storing all rows in an array isn't feasible.
Is there any way to read and parse row by row (using an iterator)? Something like
while (cp.iterate()) { // there are rows left
  char **stringVal = (char **)cp[0];
  float *floatVal = (float *)cp[1];
  processValues(StringVal, floatVal); // process the values of this row outside of CSV_Parser
}

Thank you
Marcus

Hello, thank you for the suggestion, I just added it in the 1.1.0 release, here is example showing how this could be done:
https://github.com/michalmonday/CSV-Parser-for-Arduino/blob/master/examples/parsing_row_by_row/parsing_row_by_row.ino
I also wrote some notes about it here:
https://github.com/michalmonday/CSV-Parser-for-Arduino/tree/master#parsing-row-at-a-time
I tested it a little for any obvious bugs but I didn't test it yet with large files. If the program fails in your case then please let me know.

Hello,
thank you so much for your fast reply, the implementation of my suggestion and also for the specific example!!!
It was pretty straight forward to implement the two required functions, in my case to read a CSV file from SD:
thisFileH = SD.open(FilePath, FILE_READ);
char feedRowParser() {
  return (thisFileH.read());
}
bool rowParserFinished() {
  return ((thisFileH.available()>0)?false:true);
}

A first test (10 rows) works perfectly! Testing with 5000 rows fails with Guru Meditation Error: Core  1 panic'ed (StoreProhibited). Exception was unhandled., but I have to investigate first by myself. Can do this only over the upcoming weekend (job is calling now). Will revert back to you then.
Thanks again, have a nice day and greetings from Vienna to Colchester,
Marcus

Hello Michal,
my quick & dirty test sketch was too dirty - mea culpa!
Parsing 5000 records performed flawless!
Some "benchmarks":
5000 records (char* | int32_t)
time to read: 1205 ms
time to read & parse: 2092 ms

5000 records (char* | float | float | float | float)
time to read: 4775 ms
time to read & parse: 7507 ms

So the parsing overhead is minimal, I expected much more.
Thank for your efforts!
Take care, Marcus

I just had a look and it appears that when string values are parsed (using "s" format specifier) row by row then memory is leaking, I will try to get it fixed.

It's now fixed in the 1.1.1 version.
The problem was that strdup is used for storing strings (which allocates memory), the destructor released the memory so it wasn't a problem before, but the parseRow() didn't do that, so it was just eating more and more memory.
https://github.com/michalmonday/CSV-Parser-for-Arduino/commit/7569694988a85c7cdcf5abc17a12dcd80ca2184b
Thank you very much for letting know about it.

Thank you so much Michal for your ultra-fast fix!!!

Btw I made some changes to improve the efficiency because string-based indexing was computationaly expensive, the parseRow in 1.2.0 version should be significantly faster I think (when integer based indexing is used). I modified the example code to use the more efficient way and added sd card based example using your code :)


CDN on README

Is it worth putting a CDN link to the main README doc?
https://cdnjs.cloudflare.com/ajax/libs/notie/4.3.0/notie.min.js

Is this more reliable than https://unpkg.com/notie?
Does the cdnjs.cloudflare.com also host the style files?

@jaredreich it belongs to the cdnjs.com project.
You can submit also the css.
I guess it's as reliable as unpkg.com.


requests can affect each other between route

Describe the bug
An error in one route causes another route to throw an error (IllegalReferencesCountException)
There are two routes in the project, one route will be forwarded to the normal instance, the other route will be forwarded to the abnormal instance (response time is greater than the timeout threshold), when I start the JMeter test the normal instance will throw IllegalReferencesCountException
version:
spring-cloud-starter-gateway: 3.1.1
spring-cloud-gateway-server: 3.1.1
spring-boot: 2.7.12
spring-cloud: 2021.0.7
Sample
I built a project with a simple reproducible problem. The detailed reproduction steps are in the project's READEME.md file.
https://github.com/SunJiFengPlus/scg-Illegal-reference-count

These versions are no longer supported, please update to the latest supported versions and try again

These versions are no longer supported, please update to the latest supported versions and try again

Is version 3.1.9 of scg still supported? I upgraded scg to 3.1.9 and still have problems


[10.x] Add Route::json() method

This PR adds a new Route::json() method making it possible to register a new route that returns json.
Before:
Route::get('/', function() {
    return response()->json(['foo' => 'bar']);
});

After:
Route::json('/', ['foo' => 'bar']);

Arguments that can be passed are:

The route
The data (\Illuminate\Contracts\Support\Arrayable|array)
A status code
Headers
Options

Long version:
Route::json('/', ['foo' => 'bar'], 418, ['Framework' => 'Laravel'], JSON_PRESERVE_ZERO_FRACTION);

I would probably just do:
Route::get('/foo', fn () => [1, 2, 3]);


Publish new version V4.8 for KSP V1.0.4

Bug fixes, changed science filters.


SEAB-5116: Miscellaneous notebook tweaks

Description
In support of https://ucsc-cgl.atlassian.net/browse/SEAB-5116, this PR makes a couple of small notebook-related changes to the webservice:

Corrects a value (ipynb -> jupyter) of the workflow descriptor type.
Changes the ToolDescriptor class so it imports the TRS openapi DescriptorType (rather than defaulting to the version corresponding to the TRS swagger), which causes the new type enum "jupyter" value to be included in the generated webservice openapi and swagger schemas.

This PR changes the "galaxy" type enum value that appears in the corresponding webservice schema files, because it differs between the TRS openapi and swagger files used to build.  Will that break anything?  My initial conclusion is "probably not", but please scrutinize.
Review Instructions
Confirm that the "jupyter" value now appears in the ToolDescriptor type enum in openapi.yaml.
Issue
https://ucsc-cgl.atlassian.net/browse/SEAB-5116
Security
If there are any concerns that require extra attention from the security team, highlight them here.
Please make sure that you've checked the following before submitting your pull request. Thanks!

[x] Check that you pass the basic style checks and unit tests by running mvn clean install
[x] Ensure that the PR targets the correct branch. Check the milestone or fix version of the ticket.
[x] Follow the existing JPA patterns for queries, using named parameters, to avoid SQL injection
[x] If you are changing dependencies, check the Snyk status check or the dashboard to ensure you are not introducing new high/critical vulnerabilities
[x] Assume that inputs to the API can be malicious, and sanitize and/or check for Denial of Service type values, e.g., massive sizes
[x] Do not serve user-uploaded binary images through the Dockstore API
[x] Ensure that endpoints that only allow privileged access enforce that with the @RolesAllowed annotation
[x] Do not create cookies, although this may change in the future
[x] If this PR is for a user-facing feature, create and link a documentation ticket for this feature (usually in the same milestone as the linked issue). Style points if you create a documentation PR directly and link that instead.

This PR changes the "galaxy" type enum value that appears in the corresponding webservice schema files, because it differs between the TRS openapi and swagger files used to build. Will that break anything? My initial conclusion is "probably not", but please scrutinize.

This scares me; hopefully you're right, but I see several references to GXFORMAT2 in the UI code. Can you try building the UI against your changes and see if it compiles?
There's also a chance it could break the Galaxy integration. We might need to run it by them.
On the other hand, just looking, this now matches the GA4GH TRS, so it's probably best to figure it out.

So, I did some more digging.  What follows is the motivation for my change, and explanation why it's [probably ok]:
The current values of ToolDescriptor.TypeEnum are fine, except that the type and its values are used extensively throughout the ui code (to appreciate how deeply they are woven, do a grep) and the jupyter value is missing. There's probably a historical reason for this.
The key takeaway is that, IMHO, it's much easier to adjust the enum values than to change our ui code.
So, ToolDescriptor.TypeEnum is derived from DescriptorType, which is defined in the TRS schema.  We generate different swagger and openapi versions of DescriptorType.java from schemas corresponding to different TRS releases:
https://raw.githubusercontent.com/dockstore/tool-registry-service-schemas/2.0.0-beta.6-smk-gxformat2/src/main/resources/swagger/ga4gh-tool-discovery.yaml
https://raw.githubusercontent.com/dockstore/tool-registry-service-schemas/2.0.7-beta.1-notebooks/openapi/openapi.yaml
These and the associated build steps are in the webservice pom.
So, the values of DescriptorType differ between the two.  The swagger has GXFORMAT2 and no notebooks value, the openapi has GALAXY and JUPYTER...
ToolDescriptor is a source file that's part of our repo, defined in the io.swagger.model package,so it "implicitly imports" the swagger DescriptorType.java.  Thus, when the dockstore openapi.yaml is generated, it uses the TRS swagger DescriptorType values.
So, I changed ToolDescriptor to import the openapi DescriptorType, which picks up the new notebook value.
The only use of ToolDescriptor in the webservice appears to be as part of the response of a few (legacy type?) endpoints.  In fact, the type field within can currently only be CWL or WDL.  See the ToolDescriptor constructor.  To confirm that theory, I commented out all other methods in ToolDescriptor that might be used to set the type field to something else, and the build succeeded.
So, from all this, I tentatively conclude that:

my change doesn't alter the responses of the webservice
the ToolDescriptor.TypeEnum values in the openapi schema don't matter much, as long as the CWL and WDL values remain there, because those are the only two values that webservice will return
except to our UI code, which we'll need to adjust since the GXFORMAT2 enum value goes away.  I plan to make the adjustment in the "notebook entry page" PR.

That was a lot, thanks for reading.

Regarding my concerns about the Galaxy integration, I looked into it and the query parameter is already GALAXY (they call this endpoint: https://qa.dockstore.org/api/ga4gh/trs/v2/tools?descriptorType=GALAXY&limit=100, so it should be good from that perspective.
This is good, it should also allow us to remove some special case UI code we have.

the ToolDescriptor.TypeEnum values in the openapi schema don't matter much, as long as the CWL and WDL values remain there, because those are the only two values that webservice will return

The good thing at a quick scan is that ToolDescriptor from a TRS perspective seems to be used only by TRS v1 dockstore-webservice/src/main/java/io/swagger/api/ToolsApiV1.java
It looks like TRS v2 beta and final use FileWrapper
In other words, Galaxy may be safe anyway since this could only affect the "wrong" TRS versions, would still like to test to be sure.

https://ucsc-cgl.atlassian.net/browse/SEAB-5116


[ADAM-1635] Eliminate passing FASTQ splittable status via config.

Resolves #1635. Instead of passing whether a FASTQ was splittable via config, checks to see if the compression codec is splittable. This is more reliable. In the case of a .gz file, the BGZFEnhancedGZipCodec properly handles this edge case by checking the stream type; this coupled with us explicitly checking the stream when split picking ensures that we don't try to create an invalid GZIP split. Additionally, I identified and fixed an error in the old FASTQ code that did a seek on the uncompressed input stream to backtrack if seeing a line of quality scores that began with @ when identifying the position of the first valid record in a split. Instead, we check for two successive lines that start with an @, which indicates that the first line contains quality scores, while the second line contains read names.

Coverage decreased (-0.4%) to 83.537% when pulling e64119bc7521be4ccb813b8e9fdf3d4e856e2bf1 on fnothaft:issues/1635-no-splittable-fastq-config into 7449b14ca02aab93ce09e50499778d3ccce89f0d on bigdatagenomics:master.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/ADAM-prb/2281/
Test PASSed.

Pushed a commit addressing reviewer comments.
BTW @heuermh do you think it would be worthwhile to add something to our CI that would flag any tabs in our source and fail the build? I would've missed those if you hadn't caught them.

Coverage decreased (-0.4%) to 83.537% when pulling a78b510c723ce82fb3fb47314ec1881a3d640edf on fnothaft:issues/1635-no-splittable-fastq-config into 7449b14ca02aab93ce09e50499778d3ccce89f0d on bigdatagenomics:master.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/ADAM-prb/2284/
Test PASSed.

do you think it would be worthwhile to add something to our CI that would flag any tabs in our source and fail the build? I would've missed those if you hadn't caught them.

We have a linter that runs on the scala source, this made it through because it was a java source file.  I don't think we can put a CI check on the whole repo because some of our test resources require tab characters.

Thank you, @fnothaft

Sorry, wrong button, I should've squashed.

We have a linter that runs on the scala source, this made it through because it was a java source file. I don't think we can put a CI check on the whole repo because some of our test resources require tab characters.

I mean, sure, but we could do something like:
find adam-*/src -name "*.java" -exec ./scripts/failIfHasTabs.sh {} \;
find adam-*/src -name "*.R" -exec ./scripts/failIfHasTabs.sh {} \;
find adam-*/src -name "*.py" -exec ./scripts/failIfHasTabs.sh {} \;

+1, add *.pom, *.sh


Enhancements: work with data

Hello!
I like your project.
I needed functions for working with data and I added them in my fork.
The essence of functions is to transfer data to an instance of the form and receive data from the form using simple calls.
Some of them:
var modalWithData = new tingle.modal(/*...*/);
// ... any code

modalWithData.setEntities({
        name: 'John Doe 2', // keyName & value: name: 'name', value: 'John Doe'
        numberPhone: { // keyName: elementName Or elementId Or elementClassName
            identificationMethod: 'id', // class, id... // default name
            identificationValue: 'phone', // default keyName
            usesByForm: true, // default true
            defaultAttribute: 'value', // value, another
            multiple: false,
            value: '33',
            'data-per': 654
            //classList: [], // any parameters element
        },
        title: {
            identificationMethod: 'className', // class, id // default name
            identificationValue: 'form-title', // default keyName
            multiple: true,
            innerHTML: 'New title',
            defaultAttribute: 'innerHTML',
        },
        email: 'My email',
    })

modalWithData.getEnity('name') // returns an object
modalWithData.setValue('title', 'Ivanov'); // sets to '.form-title' the 'Ivanov'
modalWithData.getValue('title'); // returns 'Ivanov'
modalWithData.getEntityPropertyNames('title'); // array -> ['innerHTML']
modalWithData.getSomeValues('numberPhone'); // object
modalWithData.getEnity('email', false); // object
// etc

I have other ideas regarding working with classes / styles (I don't want to bind to default class names).

Hi @dios-oleg,
Thanks for your interest but I prefer to keep the lib as simple as possible and from my point of view, modal shouldn't handle data.
However, I agree with the class system that needs to be reviewed.

It is possible that not everyone needs to use data pass to and from a form, as well as alerts, multiple modals, and even moving open modals. They also increase the size of the library, expand the API and use cases.
Can them be used as extensions?
When using the modal window as a choice or data entry, nevertheless, data handling and data exchange with the server occurs.


grpcproxy: fix more issues in watch path

/cc @heyitsanthony
Several more tests can pass now.

lgtm


Passwords are logged in plaintext

@kkoz passwords are logged in plaintext.

Fixed in removePlaintextPasswordLogging
https://github.com/sawalls/teledraw2/commit/0def3aa41bb7d35f445829c7c266828f90eba522


'Add' button shows through pop-up Props menu (top left)

I think I've fixed this -- I can't reproduce -- can you try it again with the latest checkin (just git pull and go build in gi/examples).  Maybe also fixes some of the other instability you've been seeing?  there was some bad code there with those toolbars (where Add lives).

Even after git pull and go build the ‘Add’ is still showing through for me immediately upon clicking the Props button; as soon as I move cursor to that menu window and scroll it goes away.
On Aug 24, 2018, at 2:50 PM, rcoreilly <notifications<EMAIL_ADDRESS>wrote:
I think I've fixed this -- I can't reproduce -- can you try it again with the latest checkin (just git pull and go build in gi/examples). Maybe also fixes some of the other instability you've been seeing? there was some bad code there with those toolbars (where Add lives).
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/goki/gi/issues/50#issuecomment-415878978, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AcotAijgfRpS-ShLZfh1CS0jYP9orv6fks5uUGcsgaJpZM4WLi6S.

Ok, I figured out how to reproduce this -- you need to have the props window sized just right so that the props widget indicator is scrolled off-screen, which then causes the popup to show up on the left like that.  immediate fix is to have the popup show up in the right place.  will take a look.


Added current date to archtype default

Since Hugo v0.24 I was getting the following warning when creating a new post
WARNING: date and/or title missing from archetype file "/Users/evils/Repositories/caffeineflo.github.io/themes/casper/archetypes/default.md".
From Hugo 0.24 this must be provided in the archetype file itself, if needed. Example:
---
title: "{{ replace .TranslationBaseName "-" " " | title }}"
date: {{ .Date }}
draft: true
---

To fix the warning and conform to the latest Hugo changes, I reintroduced the data attribute as per this PR.

While I was doing this I also added the title tag as this theme actually checks this attribute and ordered all attributes alphabetically

thanks a lot @caffeineflo


eGo projection

Add a better projection engine to consume events persisted in the journal to build a read model

I was working to add a middleware, polling database (could be an actor or a cron) looking for the new events and adding the events to the Kafka / nats topic.
After that, we can subscribe to that topic, read the events and store them in a read model table

Hello @pablogore
Thanks for the comment. We can pair on this and discuss the approach if you want. You can also open a PR to implement it.
I have been considering doing this https://github.com/Tochemey/ego/issues/33 first and then implement the projection. I implemented it sometimes using a db polling mechanism but I abandoned it because I was suspecting some performance issue. The old code base is somewhere https://github.com/Tochemey/ego/commit/d3cd4e37b0cd77b75693afb37165c12712ca3cd7

@pablogore I have added the projection implementation. I will be adding a mechanism to run it in a singleton manner in a cluster.


Clamping doesn't work with the word-break: break-all; CSS property

Hello,
first of all, thanks for the great library!
I discovered a bug when the word-break: break-all; causes the component to not work properly:

https://codesandbox.io/s/cool-hypatia-tm0pw?file=/src/App.tsx

This might help you in the meantime https://github.com/zoltantothcom/react-clamp-lines/pull/52

This is currently happening :(


navigation from and to views

f12 navigates to the underlying file
controllerName
viewName
fragmentName
f7 switches between controller and view
handling when controller is used by multiple views

Implemented in 0.4.0


How to deploy casdoor using subpath?

like https://casdoor.com/door/

@k9li deploying Casdoor to a path under a domain is not supported

@hsluoyz any plan to support it?

@k9li isn't it possible to solve it at the nginx or another proxy level?

@hsluoyz any plan to support it?

No

@ISulimanov i tried nginx but it doesn't work, maybe there is some hardcoded conflict


Fixes memory leak with lightmap part 2

This is second part of #38676, because in previous PR I fixes only "real" leak, but this time also this message should not appear
WARNING: 2 RIDs of type 'StorageBuffer' were leaked.
     at: _free_rids (drivers/vulkan/rendering_device_vulkan.cpp:7185)

This memory isn't really leaking, because Godot finds that memory wasn't released, show warning and at the end release it.

Thanks!


Backend API  Changes for reminder notifications (#1242)

DOD

[x] Creation of migration script to support CFR and legislative due date reminders
[x] Model and service changes to get CFR due today
[x] Model and service changes to get CFR due on following business day
[x] Model and service changes to get Legislative due today
[x] Model and service changes to get Legislative due on following business day
[x] Expose end point for scheduler configuration
[ ] Unit Testing
[x] Scheduler to run on defined time of 6AM.

Sample Notifications:

Legislative Due Date due on 2022 JAN 11
Legislative Due Date is Today
Call for Records due on 2022 JAN 11
Call for Records due Today

@m-prodan @arielleandrews

Scheduler process for creating reminder notifications.


The "Default" display is ambiguous.

"Default" is double meaning: system default(set by Display tab) and "Default" display plugin. So, I think it should rename to others.

This is quite right. I'll change the name 'Default' to 'Fog' soon.


frontend-apps: Use same date field 'startedAtClient' in vulnerabilities and history tab

modifications OK from my side.


chore: upgrade charts

updated chart jx3/jx-build-controller from 0.1.2 to 0.2.1

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To complete the pull request process, please assign macox
You can assign the PR to them by writing /assign @macox in a comment when ready.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


Change last_requested_at to last_request_at

The attribute to do a "page view" update (without user attribute changes) is last_request_at, rather than last_requested_at. This translates to the default attribute in the Intercom UI "Last Seen" (source)
Also, the attribute takes seconds rather than milliseconds.
Here's the documentation which talks about doing page view updates: https://www.intercom.com/help/en/articles/170-integrate-intercom-in-a-single-page-app

With the current version of this package, user objects in Intercom have the following invalid attribute:

Hi, thanks for your PR. Can you take a look at the failed build? I definitely want to merge it

Added number to the time types. Docs:  https://www.intercom.com/help/en/articles/3605703-how-dates-work-in-intercom
Intercom accepts any of the following for a datetime:
"Mon Jan 30 2023 11:27:02 GMT+0000 (Greenwich Mean Time)"
"1675078024647"
1675078024647
Hence why I'm suggesting created_at and last_request_at take a `string | number|

Thanks for trying to fix it - I wasn't able to run the checks.
I think we need parseInt to floor the number as recommended in the intercom docs. The errors from the a98be4b commit were for assigning a number to a string.
parseInt takes a number and returns a number so should probably be included and instead the number type should be added in another type def.

My bad! parseInt only takes a string according to typescript to switched it to math.floor

Thanks, can you sync with the upstream please?

FYI: the upstream main branch was renamed from master to main

v3.0.2


Tip on uploading to another project's registry

Based on my experience added a tip on uploading to another project's registry. I couldn't manage to replicate steps to copy a docker image to another project with given information, but this method is simple for an admin account having access to both projects IMHO.

This is a GCR behavior and I am not sure

if it’s defined/reliable behavior
related to this repo.

What you added seems to talk about layer deduplication but the Question doesnt talk about it.

What I expect to see replicating steps in existing document, is images to appear in the registry of second project I want them copied over (Cloud Console). That's not my experience.
In terms of it being defined/reliable, if an email account is the admin of both projects, Google Cloud handling image replication behind the scenes just with a push command makes sense to me.

What you're talking about (mirroring images between projects) is very off topic to what's listed in this question, I'm sorry.
The question clearly shows how to make Cloud Run work with GCR images that reside in other projects, and the solution is already listed. Your Tip doesn't add up to that question.

In that case push command will not upload image files from your machine for a second time,

This behavior is not defined/guaranteed by Google Container Registry. It might be a side-effect currently (like caching), and may change in the future. I'm not sure if it's reliably reproducible. So let's not add it.
Not to mention, this "Tip" is not actionable. The fact that it's faster to push an image to another project is not really a tip.


Add a navigation bar

As the portfolio gains more information, it may make sense to add a navigation bar. This bar should include the logo on the left side but only once the page has scrolled down a bit.

Can I work on this with you @Ankur6702?

Definitely @kristinlam , lets work on it together! Can we discuss more about it over discord or on a calendly meeting?


Verify.Xunit should reference full  Xunit package

With this we can optionally omit the reference to Xunit in the test projects, avoiding the ubiquitous dependabot errors when it tries to bump Verify.
Reducing the Xunit referenced to a minimum doesn't really make sense here - when you use Verify.Xunit, you surely want to use Xunit

given Verify.Xunit will not necessarily re-deploy when Xunit updates, and we want to be referencing the newest Xunit, shouldnt any consuming package reference Xunit to ensure they have the latests?

also note https://github.com/VerifyTests/Verify/issues/649

It still can

#649 should have been able to resolve by adding the correct direct references in the client project.
Now many existing projects are broken.

@Chaosflo  thoughts?

I could fix this by referencing Xunit as version "*" to always have the latest version.


Are there any plans to support Distributed locks feature？

Discussed in https://github.com/go-redis/redis/discussions/2090

Originally posted by FlameMida May 23, 2022
just like redisson do,is it possible?

https://github.com/bsm/redislock


Does this hook works with useFlexLayout?

Is there any example available that shows a sticky column with useFlexLayout and column resize?

Works for me, however needs slightly different styles from the example

@ViieeS It would be a great help if you can put up a small example on codesandbox.


Group token location data to loc field

Cherry-picked changes from #436:

Added basic unit test for Tokenizer.
Grouped start/end fields into single loc: {start, end} object. This simplifies processing the location info separately from the whole token. Not used right now, but planning to use in the future.
Changed the appended EOF token to use actual source code length as location to avoid Infinity locations.

should use location or pos instead as key, otherwise, lgtm

I chose the name loc based on the babel-eslint9 parser after which I also modeled the leadingComments/trailingComments fields.
I've been thinking though whether the end location will be needed at all. Currently only the start location is ever used. So we could eliminate the whole group and just have a single numeric field.

I think removing end location should be fine and if ever we need it, we can just restore it from this branch
still not fully on-board with loc as a shorthand, definitely not obvious that it stands for location

I'll merge this in as-is for now, as another PR already depends on changes in here. Then I'll add another PR to change the loc field.


My PEX Isn't working.

Hello!
I've just made my new server with a couple plugins.
For some reason, when I do /plugins, it shows PEX yet it's in red, and /pex does not work.
If someone could help, it'd be greatly appreciated.
Plugins: DeathMessagesPrime
PermissionsEx [In red]
Oldschoolkill
ChatCo
Random_Spawn
NetherRoofProtect
It's an Anarchy server if you're wondering the type of server.
Image of the red PEX - http://imgur.com/a/4QiIW
Here's the server log from when I turn on the server - directly from "latest.log" - http://pastebin.com/yx3Lf3Df
The "config.yml" file - http://pastebin.com/bpm7JwAy
The "permissions.yml" file - http://pastebin.com/5vJYZsXr
And there you go. If anyone knows how to fix this issue, please let me know.
Thanks Alot,
~Grassy
EDIT -- Found out the issue; the "- bukkit.command.tps" was preventing it from working somehow. If someone is able to show me how to add "/tps" to non-opped users, it'd be greatly appreciated.

PEX typically shows up in red when there is an error (or more) in the permissions.yml file.
PEX found an error in your file:

Caused by: org.yaml.snakeyaml.parser.ParserException: while parsing a block mapping
in 'string', line 1, column 1:
groups:
^
expected , but found BlockEntry
in 'string', line 7, column 1:

bukkit.command.tps
^

but there is no error showing in the permissions.yml file you linked here.  Did the file change somewhere between the tile the log recorded the error and you pasted it?
Be sure you're only using the permissions.yml file that is inside the plugins\PermissionsEx folder.  The permissions.yml file in your server's root directory should not have anything at all within it.  (If yours does, delete the contents, save the file, and close it.)

So, I seemed to have kinda figured it out.
The "- bukkit,command.tps" is what seems to be creating the errors.
I removed it, and it worked fine.
But I still want the default user to have access to "/tps".
Any tips?

Actually...  bukkit.command.tps is not a real permission node, and /tps is not an accociated "Vanilla" command.  (You can see all the "Vanilla Permissions" right here.
What did you expect that node and command to be?

I wanted /tps, and it showed me this : https://www.spigotmc.org/wiki/spigot-commands/
If you look, the second one is "/tps" with "bukkit.command.tps"
I'm new to PermissionsEx and Spigot, if you could show me how to properly "mount" that it'd be greatly appreciated.
Thanks!

Oh!  I didn't see Spigot when I first looked at the console log.
That command is actually not information that normal players on a server ever really need to see— and I'd bet 99% of them have no idea what a "timing" is.  It's an admin command to track how much your server is lagging.  If you want to give that out, more power to ya I guess, but it's not usually a player command.
Try this— type pex group default add bukkit.command.tps into the console to add the node to the group via command.  Then type pex reload into the console to reload the PEX plugin.  After that, stop the server fully, and start it again to see if you get the error you got originally.

Wow! Many thanks to you.
Really appreciate it, man
Thanks for the support!

You're welcome.  Let me know if that command works in-game (/tps while in-game).  If it works, you or I can close the ticket.

Tried it in game, works perfectly!
You can close it, not sure how to close it (lol).
Thanks again, have a nice day/night!

You're welcome. :)  Have fun!


[Feature Request] Hotkey to toggle pin

It would be nice to map a keyboard shortcut that toggles the hover editor pin. The default "toggle pin" command just pins the single window in the hover editor, not the pin which keeps the window from going away

+1 for this! Sometimes I use a hover window just to preview a note, and sometimes I want to keep the window there while I do something else. The ability to pin and unpin with a hotkey would be great.


Inject the Conduit proxy into all Conduit control plane pods

The control plane itself should have all the observability, reliability, and security benefits that any Conduit-managed service would have. For example, we should be able to see request success rates and latencies for the private API and the public API and for the Web UI in the Conduit web UI and in conduit stats. Further, the way the control plane is secured (via TLS, in particular) should be done in the same way it is done for the data plane. To do this without duplicating work between the control plane code (in Go) and the proxy code (in Rust), the proxy should be injected into all the control plane pods and as much as possible everything should work as though the control plane is part of the data plane.
There may be bootstrapping-specific stuff we need to address since the proxy will both be proxying the control plane and using the control plane's private API as a client. See #302.
/cc @olix0r @adleong

we should be able to see request success rates and latencies for the private API and the public API and for the Web UI in the Conduit web UI and in conduit stats

Currently, the private API and public API reside in the same pod. If we want to see stats for each of those APIs we may need to break up the two services and place them into their own pods. Is that something we should do?

Currently, the private API and public API reside in the same pod. If we want to see stats for each of those APIs we may need to break up the two services and place them into their own pods. Is that something we should do?

Really my point is that there are a lot of benefits to using the proxy within the controller; some of them won't be realized immediately though. I wouldn't do any work related to metrics or any particular justification except the TLS-related ones w.r.t. this issue.
Once we add back the ability to do hostname- (and path-) based stats then we'll have the ability to separate private API statistics from each of the APIs even if they stay in the same pod. There are potentially security and/or scaling and/or maintainability advantages to putting them in separate pods but we should decide that separately.

The sidecar model generally assumes that pods are somewhat atomic.  That is, intra-pod traffic generally does not go through the proxy and therefore metrics for that traffic is not gathered.  With our current architecture where all controller components run in the same pod, this means that we will be able to get metrics for external APIs only (proxy-api and public-api).  I think this is a perfectly reasonable stepping stone and will improve in the future when we split the controller pods up, allowing each individual component to have its own dedicated proxy sidecar.


incompatible device name

It seems, that a device name e.g. "Esszimmer_RM_6,7" is not allowed. Maybe there is a problem by using the "comma" symbol.
All the other devices can be controlled without any problems. This device names are all without a "comma" symbol.
Thanks
Log:
(506) State "tahoma.0.devices.Esszimmer_RM_6_7.commands.down:slow" has no existing object, this might lead to an error in future versions
(506) Used invalid characters: tahoma.0.devices.Esszimmer_RM_6,7.commands.down:slow changed to tahoma.0.devices.Esszimmer_RM_6_7.commands.down:slow
Version:

Adaper: 0.52
JS-Controller: 3.3.22
Node.JS: 14.18.1
System: Ubuntu 21.04

It should be fixed now v0.5.3. Please give it a try.


Updated the indices for composing the asset keys

Summary
The key for attributes changed to have an additional #asset#.
Type
Bug fix

Good idea. The data we want from the attribute object happens to exist only in the key, #asset#ceph.noahtutt.dev#<IP_ADDRESS>:
{
    "username"<EMAIL_ADDRESS>    "key": "#attribute#asset#ceph.noahtutt.dev#<IP_ADDRESS>#seed#noahtutt.dev",
    "class": "seed",
    "name": "noahtutt.dev",
    "updated": "2024-07-06T03:05:30Z",
    "ttl":<PHONE_NUMBER>
}


Chromium - All websites with the letter H are blocked

I have no idea, what has happened, but after the latest update all the websites, with the letter H are blocked. No matter if they are in English, Slovak, Czech or in other languages they are on a blacklist. Yes, even the Github is blocked. It seems that this only happens to the Chromium Browsers, and not for the Firefox or Waterfox.
I'm using the Energized Ultimate Protection.

@AdroitAdorKhan Now, this is a very interesting thing. It seems, that this bug, is only at the Ungoogled and Iridium. Brave and Chrome (thought, only tested on Canary), doesn't have this issue, but the first two have. Can you fix it somehow?

there’s a wrong line in the core list that is causing this issue
<IP_ADDRESS> h

@kataki Thanks for info! Hopefully it will be fixed soon.

It seems that this issue has been fixed, but there are still a lot of broken websites.


Creates the cross-platform nupkg.

Refactors the *.nuspec to properly include both versions of the PS
Module in the same package.
Fixes the TAR package for net46 so we dont copy facade dll's for no
reason.

Well that was quick. AppVeyor only has PS 5.0.10586.117 and the cross plat multipackage is only supported in 5.1.14300.1000.

We are going to have to publish two feeds. This will never work for downlevel clients.

It might be possible to update powershell on the Appveyor instance... But only if we can find a way to get that on there without a reboot.

Oh, never mind. Just saw your email: this won't work because of customers who have 5.0. As long as we still want to target them, we are stuck.


modem: hl7800: Make RSSI rate configurable

Improve ability to sleep by not needing to wake up to query network signal strength.

@rerickson1  please rebase

@rerickson1 please rebase

@carlescufi  all set, ready to merge.


Parenthesis not highlighted in context

This is how the context bars look in my nvim. Did some research on the issue but couldn't find anything. This also seems to apply to every language, not just typescript. I put my treesitter and context config below.

It's your colorscheme


can not search cross processes

when analysis profiling from multi-process, need to search cross processes. thanks

this feature is very important. thanks


Key.primaryTriads missing augmented chords

macOS Version(s) Used to Build
macOS 12 Monterey
Xcode Version(s)
Xcode 14
Description
primaryTriads on Key only contains major, minor and diminished triads, which is fine for major (Ionian) and natural minor (Aeolian) modes, but when using a different mode (e.g. Harmonic Minor, which is not an uncommon mode to use) the augmented triad is missing.
For example:
Key(root: .C, scale: .harmonicMinor).primaryTriads
Expected:
Cm, D°, E♭⁺, Fm, G, A♭, B°
Actual:
Cm, D°, Fm, G, A♭, B°
Possible solution 1:
Change allowablePrimaryTriads Key.swift:45 to include .augmentedTriad.
The existing tests still pass when this is present.
Possible solution 2:
Add a function to Key that takes the allowable triad types and generates the full set of triads on the fly by duplicating a subset of the logic from Key's init func, e.g. something like:
public func triads(withTypes allowedTypes: [ChordType]) -> [Chord] {
    var triads: [Chord] = []
    for chord in chords where chord.noteClassSet.isSubset(of: noteSet.noteClassSet) {
        if allowedTypes.contains(chord.type) {
            triads.append(Chord(chord.root, type: chord.type))
        }
    }

    let triadsStartingWithC = triads.sorted(by: { $0.root.letter < $1.root.letter })
    let rootPosition = triadsStartingWithC.firstIndex(where: { $0.root == root }) ?? 0
    return Array(triadsStartingWithC.rotatingLeft(positions: rootPosition))
}

Clients can also add this function as an extension in their own code base, though they would have to implement/copy the rotatingLeft func of RangeReplaceableCollection extension themselves.
Possible solution: 3
Make ChordTable public and allow it to be constructed with the allowed triads and accidentals for generating chords. This will allow clients to make an extension function, like in possible solution 2, with more precision:
init(allowedTriadTypes: [ChordType], allowedAccidentals: [Accidental])
Crash Logs, Screenshots or Other Attachments (if applicable)
No response

Thanks for merging, @aure.
I'm also having a problem with missing double flat and double sharp triads.  One solution would be to simply add .doubleFlat and .doubleSharp to the accidentals list here: https://github.com/AudioKit/Tonic/blob/main/Sources/Tonic/ChordTable.swift#L18
Again, this doesn't break the existing tests.
However this swells the number of number of generated chords from 602 to 823.  It doesn't appear to have any impact on performance or memory though, so maybe it's not an issue.
What do you think?  Should I open another PR/issue for that?
Thanks in advance!

If I recall correctly, I believe I restrict the accidentals because I never want to spell a chord that has triple accidentals like say C## augmented would require. Starting only from single accidentals prevents this. I welcome your thoughts for your use case though, so educate me.

My use case is to display all the triads for a list of scales/modes to aid with song writing.  So if the user chooses a key like Db major then I take the note (Db) and show other scales/modes too. This does result in some "theoretical" scales (like Db Phrygian) which includes double flats, but for completeness I want them to be there.
e.g.
    let root = key.root
    let phrygianTriads = Key(root: root, scale: .phrygian).primaryTriads

This is a prototype of the UI, you can see the gaps where the double flats would be.

I understand if you don't want to make that change.  What about my 3rd possible solution above?  This change would be none-breaking (the shared var would be configured as it is now), but it would allow clients to create their own chord tables more precisely.  I'm happy to create a PR with that change.

I think it should be fine so long as you don't also expect to spell these chords since we don't support beyond double-accidentals.

That works for me, thanks.
So next steps, do you want me to do anything?

If you want to make a trivial PR for it, you should.

Will do, thanks!


Error: Failed to open usbinterface and failed to set power state

I am using the Realsense D415 on the Jetson Xavier NX with ROS in Ubuntu 18.04.  The ROS Realsense version is 2.3.2 running with LibRealSense v.2.50.0.
I am facing the strange behavior that every 5-10 boots or so when I start "roslaunch realsense2_camera rs_camera.launch" the script does not start. It stops with the error:

failed to open usbinterface 0, error: RS2_USB_STATUS_ID
aquire_power failed: failed to set power state

Like I said it only happens like every 5-10 boots. I have tested it with different Realsense firmware versions, different cables (also with the original cable) and also different Realsenses.
Does anyone can help with this problem?

Hi @JaCoHSU  Does the frequency of the problem reduce if you add initial_reset:=true to your roslaunch instruction to reset the camera at launch, please?

Hey @MartyG-RealSense,
thank you for the fast response.
Actually I tried to add initial_reset:=true to the launch script. I did this because sometimes the Realsense got detected as an USB2 devices and I thought this might be the problem. After adding initial_reset:=true to the script the realsense got detected as an USB3 device after the reset.
However, this does not solve my problem since it looks like that the error occurs before the initial reset is triggered.
I added a screenshot of the console when the error occurs. (sorry for the bad quaility)

A Failed to set power state error suggests that the camera cannot be accessed, perhaps because it is in a 'busy' state.  This might occur because it was not properly closed down from a previous session of use.  If the camera could not be detected at all then the error would likely be 'No RealSense camera detected'.
Are all of your cameras using the <IP_ADDRESS> camera firmware driver that is recommended for use with SDK 2.50.0 please?

Okay, but after a new boot the camera should not be in busy state, right?
Also, i tried plugin out and plugin in the camera but I guess that the launch script does not detect that since the script does not continue. It stays at the error message.
However, I noticed that when I get the error, close the terminal and start a new terminal with the roslaunch realsense script the realsense gets detected and works as expected.
I tried the newest firmware that I can upload with the realsense viewer and an older version (5.12.7)

Yes, that's what I read, therefore if used an older version of the firmware.
I tried both, soft reboot and hard boot. The problem occurs in both situations.
Do you have any idea what I can do to solve or at least to debug the problem even more?

You could eliminate that possibility that the rs_camera.launch file is responsible by performing an RGBD launch instead.

Install support for an RGBD launch on Melodic with the command below.

sudo apt-get install ros-melodic-rgbd-launch

Run the rs_rgbd.launch file.

roslaunch realsense2_camera rs_rgbd.launch

Hey @MartyG-RealSense,
I did update the firmware of the Realsense to <IP_ADDRESS> and did plenty of hard reboots. In the beginning, I thought that the problem was gone. However, yesterday it occured again 2-3 times.
I did not try to use the rs_rgbd script yet because I need the color and the depth image.
Do you think that the problem is a Realsense problem or might it come from the Jetson Xavier NX as well?
Can you explain the error message to me? What does failed to open usb interface and failed to set power state mean? Maybe that might help me to debug the problem further or to find a workaround. I found out that when I restart the launch script that the problem does not occur. Maybe it would be a workaround to detect the error and restart the script automatically?!

rs_rgbd does publish both depth and color like the rs_camera launch does, as depth and color are enabled by default in rs_rgbd.launch.
My understanding is that the RS2_USB_STATUS_IO error (not _ID) is related to a failure to get data from the USB port (IO stands for Input-Output - basically, the communications between the camera and the USB port of the computer).
As this error occurs first in the log, the subsequent 'failed to open usb interface' and 'failed to set power state' errors could be what I would call 'cascade errors' - errors that are triggered by the preceding error and would not have happened if that previous error had not first occurred.  I would therefore recommend focusing on the RS2_USB_STATUS_IO error.
The 'failed to open usb interface' and 'failed to set power state' errors typically occur when the camera is unable to be accessed.  The "usb interface" error is linked to RS2_USB_STATUS_ACCESS, advice about which can be found at https://github.com/IntelRealSense/librealsense/issues/7521#issuecomment-705056917

Hi @JaCoHSU  Do you require further assistance with this case, please?  Thanks!

Hey @MartyG-RealSense,
I am still trying to debug the issue, which is hard because it only occurs after about every 10th-20th boot.
I have shortly tried it with the rs_rgbd.launch, but I got a warning: "uvc streamer watchdog triggered on endpoint" and the fps seemed to be very bad.
However, currently I am using a different Jetson to rule out that the Jetson is the problem.
I will come back to you as soon as I get new results or have more questions!

Thanks very much for the update.  I look forward to your next report.  Good luck!

Hey @MartyG-RealSense,
good news are that I have not had the failed to set power state error since I changed the jetson! I will continue testing and keep you updated.
However, while testing yesterday I had the problem, that I had a rgb image, but sometimes I did not receive any depth frame at all after starting the rs_camera script.  Do you have an idea why this might be?
Furthermore, I observed that sometimes I do not get any images (rgb and depth) for a few seconds and when the images are coming back they start with an auto-exposure. Do you have any idea if the auto-exposure is the reason for the stop or if a reconnect of the realsense is the reason for the auto-exposure?

If there is a situation where the RealSense camera is facing directly towards strong light (such as the sun) then the camera sensors can become saturated with light.  If auto-exposure is enabled then the image can automatically recover if the strong light is no longer directly facing the camera, or the camera has moved and is no longer directly facing the light.
If it is not likely that your camera is being exposed to a strong light such as the sun then you could try setting initial_reset to true again now that your Failed to set power state issue is resolved to see whether it makes a difference to the problem.
If the camera is being used in a location with consistent lighting levels such as an office then you could also try disabling auto-exposure and use a fixed manual exposure value in order to confirm whether auto-exposure is causing your image problems.

Hi @JaCoHSU  Do you require further assistance with this case, please?  Thanks!

Hey @MartyG-RealSense,
last week I have not had any problems. However, the error occurred again a few times this week.
I still do not know why.
The Jetson does start the rs_camera.launch script automatically 30 seconds after booting. When I get the "failed to open usbinterface....failed to set power state error", I need to restart the Jetson. I do this by plugin out and in the battery. Most of the times the error does occur several times in a row. So I need to restart the Jetson 2-3 times until the script does start correctly. Thats why I do not think that it is a hardware problem.
The only difference to last week where I did not had the errors is that the temperature was not as high as this week. Might a high temperature can have anything to do with this error?

There have been a small number of past cases where a camera needed to be restarted several times in order for it to be accessed correctly.  https://github.com/IntelRealSense/librealsense/issues/8694 is an example of this and is a case where rs_camera.launch was also being used.
It is unlikely that temperature is a factor in this problem.  Typically with these rare 'boot several times' issues, the reason for it occurring is not found.

@MartyG-RealSense
Hmm... If I do not find the reason for the error I might need to find a workaround.
Would it be possible to detect the error and restart the rs_camera.launch script?

One option might be to modify the base_realsense.node.cpp source code of the ROS1 wrapper to insert a hardware reset command in the error "catch" section of the wrapper where it registers when an error has occurred.  You would then build the customized wrapper from source code.
https://github.com/IntelRealSense/realsense-ros/blob/ros1-legacy/realsense2_camera/src/base_realsense_node.cpp#L166-L170
Below is an example of C++ hardware reset code.
rs2::context ctx;
rs2::device dev = ctx.query_devices().front(); // Reset the first device
dev.hardware_reset();
rs2::device_hub hub(ctx);
dev = hub.wait_for_device();

@MartyG-RealSense
thank you! I will try that out. I built the realsense-ros by source and adapted the base_realsense_node.cpp as you suggested. Since Librealsense version is v2.55.1 now I also updated the realsense to FW version <IP_ADDRESS>
I will come back to you as soon as I get some test results.

You are very welcome, @JaCoHSU - I look forward to your next report.  Good luck!

Hey @MartyG-RealSense,
I just wanted to come back to you and tell you that I have not had the error again since I updated the librealsense and the FW version of the realsense.
Thank you very much for your help!!!

Case closed due to solution achieved and no further comments received.


Add round robin config for layout team

Adds round robin configuration for the layout team, pulling calendar JSON data from https://gecko.layout.team

Coverage remained the same at 26.027% when pulling 5b2f70f998b9a7699aeda9698761b8758684ff62 on svoisen:master into a941d4f2b33a841b1374a7c1ce8d78e4715d64d2 on mozilla:master.

There are no duty dates so we need to find how to handle this.

We decided of a strategy for such a situatiion:

choose randomly someone in the set of triaggers for the needinfo
select everyone in the set when sending an email


[FEATURE] metadata/db shouldn't be a sub-pkg of metadata

Description
While trying to fix #310. I notice metadata/db is a sub-pkg of metadata. However, it leads to a wired situation that the sub-pkg is importing the parent pkg, but the parent pkg doesn't import sub-pkg:
https://github.com/awslabs/soci-snapshotter/blob/00474ecf61cfb905a0d6436b516110050bb6435c/metadata/db/db.go#L41
https://github.com/awslabs/soci-snapshotter/blob/00474ecf61cfb905a0d6436b516110050bb6435c/metadata/db/reader.go#L51
https://github.com/awslabs/soci-snapshotter/blob/00474ecf61cfb905a0d6436b516110050bb6435c/metadata/metadata.go#L35-L42
This is exactly on the contrary of how we should define a sub-pkg: sub-pkg should be a standalone component. The parent pkg or others can import sub-pkg if it only uses that specific component.
Now with this structure, anyone importing the sub package is esentially import the sub and the whole parent package.
Describe the solution you'd like
Combine them into a single metadata pkg.
A similar example is that soci/artifacts.go is also the db of soci indices, but it's not in a db subpackage.
Describe any alternative solutions/features you've considered
Switch the parent and sub package (metadata and metadata/db -> db and db/metadata). This is not an optimal solution.
Any additional context or information about the feature request
No response

However, it leads to a wired situation that the sub-pkg is importing the parent pkg, but the parent pkg doesn't import sub-pkg

I'm not sure this is such a weird situation. In the go standard library, crypto, encoding, and hash all follow this pattern where sub-package import the parent, but not the other way around.
Stargz implements metadata/memory so I think the idea is to make things clear by having, e.g., db.NewReader vs memory.NewReader. I think we can make the argument that having that flexibility isn't valuable to us, but I don't think the package relationship is a convincing argument.

but I don't think the package relationship is a convincing argument.

yeah I agree now that the "sub-package shouldn't import parent package" is not a convincing argument :) It makes sense sometimes that parent provides high-level abstractions (interface, data structure) and each sub-package provides a different impl.
Still feel #467 (combine them) has benefit now as this specific abstraction (1). is not necessary/valuable to us; (2). complicates our test code (each parent/sub pkg has a testutil.go to share test code; (3). inconsistent with other code (soci/artifacts.go, it might be a good/bad convention, but we should keep them consistent); (4). can be easily changed back if later we have a non-db impl of metadata.


Implement RE form for fast healing and regeneration

Need to make fast healing chat message pretty somehow. Will give that a shot later.

The deactivation probably shouldn't be from the list of weaknesses. Some of them wouldn't make enough sense to be implementable.

Got a thought? The deactivations list are mostly for localization, not for implementing. They can accept arbitrary strings (the whitelist isn't enforced), and what we're likely to do is that some are automated and some are not.


Invalid UTM Zone

Hi, I´m trying to run the software with my data, I successfully run the example data, but when I run my data I got the next error:
python3.6 StrainTensor.py -i ../data/IGP_VEL.vel -r=-79.0/-75.5/-12.5/-8.5 --x-grid-step=0.5 --y-grid-step=0.5 --dmin=1 --dmax=500 --dstep=1 --Wt=24 -c -g
[DEBUG] Reading station coordinates and velocities from ../data/IGP_VEL.vel
[DEBUG] Number of stations parsed: 20
Traceback (most recent call last):
File "StrainTensor.py", line 416, in
assert Zone == utm_zone, "[ERROR] Invalid UTM Zone."
AssertionError: [ERROR] Invalid UTM Zone.
I appreciate your help.
Thanks

I too am having this problem, but only when using negative longitude or latitude. I am currently looking through the code to see if they somehow define the negative values differently or if there is a different way in shell to define negative numbers.

Hi there,
here is what i think the problem is: when performing computations to estimate strain tensor parameters, the input ellipsoidal coordinates are transformed to UTM coordinates. We have placed a limitation when transforming to UTM, that all stations considered should fall within the same (UTM) zone. We are currently working on removing this limitation. I will have news soon.
Xanthos

Hi @cysarine ,
please check the answer discussed in https://github.com/DSOlab/StrainTool/issues/68#issuecomment-903305723. Let me know if that fixes the issue.
Xanthos

Hello  @xanthospap ,
Thank you very much for your answer. I have reviewed and followed the instructions in #68 . And the software has run without any errors. However, when reviewing the strain_info.dat file the coordinates generated in degrees of lat and long do not correspond to my study area. Attached image of the file.
Hope you can help me solve this problem. Greetings

You are right,
i didn't correctly predict the side-effects of the change! sorry for this. I will patch this and and send a fix in the following hours.

@cysarine
i have made changes to the source code to fix the bug. Quite a few things had to be corrected, so i have created a new branch committed to the bugfix. It is called bug68.
Please pull the new branch and check if the program runs as expected. Something like git fetch; git checkout --track origin/bug68 should do the job (more info https://stackoverflow.com/questions/9537392/git-fetch-remote-branch). After the pull, you should also re-install the pystrain package (aka go to the folder StrainTool/pystrain and execute the command sudo python setup.py install).
Please let me know if that fixes the problem. If not, could you please share your input file so that i can further check/debug the source code?
Xanthos

Hello there,
I have installed the software with the corrections you made, however, the strain_info.dat file keeps giving the same error with wrong lat and long. I attach the file of my study area. Thanks for your help
IGP_VEL.txt

@cysarine ,
i have made a few changes in the source code and hopefully it should now produce sensible results. I have tried issuing the command ./StrainTensor.py -i ../data/IGP_VEL.txt -r=-79.0/-75.5/-12.5/-8.5 --x-grid-step=0.5 --y-grid-step=0.5 --dmin=1 --dmax=500 --dstep=1 --Wt=24 -c -g and it seems to produce realistic values (i attach the result file).
The changes i made are in the same branch (aka bug68), so you will need to pull the latest changes (>git pull origin bug68) and then reinstall the pystrain package).
Please give it a try and let me know if it works as expected.
Xanthos
strain_info.txt

dear @cysarine ,
have you tried the new version of the software (that is pulling the branch bug68)? Does it work as expected?
Xanthos

Hi Xanthos,
Thanks a lot for your help, the new version of the software works for me.
Cisarine


Use enums instead of strings for states

I see that the state machine is generic, but I would like to have my states identified by enums instead of strings. However, this does not work in a hierarchical setup if the child state machines have a different enum type (which is highly desirable).

new StateMachine()   PlayerState is enum

This feature is currently fully supported by UnityHFSM but not documented yet.
Every nested state machine can use its own type for the state identifiers. The only thing that all state machines in a given hierarchy have to share, is the type for the triggers / events, so that they can be passed down the hierarchy.
The StateMachine class takes 3 generic type parameters: TOwnId, TStateId and TEvent. TStateId is the type for the state names in a state machine, i.e. of its child states. If you use a state machine as a state (-> it would be a nested state machine), it itself needs an identifier for the parent state machine. This is the TOwnId type parameter. Lastly TEvent is the type for the triggers and events.
There are also multiple overloads for the StateMachine class that reduce the boilerplate code needed to get started:

StateMachine = StateMachine<string, string, string>

StateMachine<T> = StateMachine<T, T, string>

StateMachine<T1, T2> = StateMachine<T1, T1, T2>

Here's a small example that shows how you can mix different types:
enum PlayerStates {
    IDLE, MOVE, JUMP
}

enum MoveStates {
    WALK, DASH
}

enum Events {
    ON_DAMAGE, ON_WIN
}

var fsm = new StateMachine<PlayerStates, Events>();
var moveFsm = new StateMachine<PlayerStates, MoveStates, Events>();
var idleFsm = new StateMachine<PlayerStates, string, Events>();

fsm.AddState(PlayerStates.IDLE, idleFsm);
fsm.AddState(PlayerStates.MOVE, moveFsm);
fsm.AddState(PlayerStates.JUMP, new State<PlayerStates, Events>());
// Or simply using shortcut methods: fsm.AddState(PlayerStates.JUMP);

moveFsm.AddState(MoveStates.WALK);
moveFsm.AddState(MoveStates.DASH);
moveFsm.AddTransition(new Transition<MoveStates>(MoveStates.WALK, MoveStates.DASH));
// Or simply: fsm.AddTransition(MoveStates.WALK, MoveStates.DASH);

idleFsm.AddState("Animation 1", new State<string, Events>());
idleFsm.AddState("Animation 2");

// ...

Does this solve your problem?

Yes, perfect! I wasn't able to figure out what the other type parameters were and I think the overloads confused me. But got it working with this example! Might be useful to pop this into the docs.
Had another quick question #15 if you have a minute I would really appreciate it!


Using fixmatch's baseline to process TG images does not achieve the accuracy in the paper

I use fixmatch's baseline to process TG images, and the accuracy rate is only about 55%. Among them, the ucf101 dataset is processed, and 20% has labels. The training cycle is 180 epochs, where the code is based on your our_ method file. Could you tell me what the problem is?

I think you are talking about the Fixmatch baseline with TG as input. You need to modify the test pipeline to make the model test with TG but not RGB.


Skip tests on documentation changes

The CI is heavy and is not needed for PRs like #156.

Implemented.


Implement on behalf of token passing for extensions

Description
This PR introduces basic token passing within the RestSendToExtensionAction. These tokens provide authc/z capabilities when supported by a complete Identity Plugin.
Completes: https://github.com/opensearch-project/security/issues/2764
Check List

[x] New functionality includes testing.

[x] All tests pass

[x] New functionality has been documented.

[x] New functionality has javadoc added

[x] Commits are signed per the DCO using --signoff
[x] Commit changes are listed out in CHANGELOG.md file (See: Changelog)

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

@cwperks, I think we are waiting on the merge to main for the token handler in Security no? I thought that was part of what Ryan wrote.

@cwperks, I think we are waiting on the merge to main for the token handler in Security no? I thought that was part of what Ryan wrote.

There is a JWTVendor on that branch, but it doesn't implement the IdentityPlugin and show an implementation of the TokenManager. Would you want to take a stab at branching off of feature/extensions and adding an implementation of TokenManager that uses the JWTVendor that Ryan created?

HI @cwperks, yeah no problem. This is actually a branch I had made up some time ago: https://github.com/opensearch-project/security/pull/2787. I can make some changes to reflect any differences since then but it should demonstrate the general idea.

Code coverage is flagging setters and getters and an enum.

Flaky tests:

| Test Result (4 failures  / +4)org.opensearch.cluster.shards.ClusterShardLimitIT.testCreateIndexWithMaxClusterShardSettingorg.opensearch.cluster.shards.ClusterShardLimitIT.testCreateIndexWithMaxClusterShardSettingorg.opensearch.cluster.shards.ClusterShardLimitIT.testCreateIndexWithMaxClusterShardSettingorg.opensearch.cluster.shards.ClusterShardLimitIT.testCreateIndexWithMaxClusterShardSetting
-- | --
[Test Result](https://build.ci.opensearch.org/job/gradle-check/20219/testReport/) (4 failures / +4)
[org.opensearch.cluster.shards.ClusterShardLimitIT.testCreateIndexWithMaxClusterShardSetting](https://build.ci.opensearch.org/job/gradle-check/20219/testReport/junit/org.opensearch.cluster.shards/ClusterShardLimitIT/testCreateIndexWithMaxClusterShardSetting/)
[org.opensearch.cluster.shards.ClusterShardLimitIT.testCreateIndexWithMaxClusterShardSetting](https://build.ci.opensearch.org/job/gradle-check/20219/testReport/junit/org.opensearch.cluster.shards/ClusterShardLimitIT/testCreateIndexWithMaxClusterShardSetting_2/)
[org.opensearch.cluster.shards.ClusterShardLimitIT.testCreateIndexWithMaxClusterShardSetting](https://build.ci.opensearch.org/job/gradle-check/20219/testReport/junit/org.opensearch.cluster.shards/ClusterShardLimitIT/testCreateIndexWithMaxClusterShardSetting_3/)
[org.opensearch.cluster.shards.ClusterShardLimitIT.testCreateIndexWithMaxClusterShardSetting](https://build.ci.opensearch.org/job/gradle-check/20219/testReport/junit/org.opensearch.cluster.shards/ClusterShardLimitIT/testCreateIndexWithMaxClusterShardSetting_4/)

@peternied if you could respond to any small items on this that would be great! I know @cwperks will need it soon.

Missing code coverage is from getters; I am not planning on adding coverage for that. Could I please get final reviews? @peternied @reta
Thank you!

Tests added.

Flaky test: [org.opensearch.indices.replication.SegmentReplicationTargetServiceTests.testShardAlreadyReplicating](https://build.ci.opensearch.org/job/gradle-check/21139/testReport/junit/org.opensearch.indices.replication/SegmentReplicationTargetServiceTests/testShardAlreadyReplicating/)

👎 Please don't change the format of the file incidentally with other code changes. Happy to discuss in another PR or an issue around import styles.

This is the same thing from the other issues where intelliJ auto does it. I mentioned not knowing how to correct it since I had tried several times and it had not worked. It is not intentional; I will manually swap it back.

Flaky test:
[org.opensearch.search.suggest.CompletionSuggestSearchIT.testSuggestDocument](https://build.ci.opensearch.org/job/gradle-check/21272/testReport/junit/org.opensearch.search.suggest/CompletionSuggestSearchIT/testSuggestDocument/)

Failure seems unrelated to this change.

Flaky tests:

  | Test Result (5 failures  / -1)org.opensearch.snapshots.SnapshotResiliencyTests.testTransportGetSnapshotsActionorg.opensearch.cluster.routing.ShardMovementStrategyTests.testClusterGreenAfterPartialRelocationNoPreferenceShardMovementPrimaryFirstEnabledorg.opensearch.cluster.routing.ShardMovementStrategyTests.classMethodorg.opensearch.cluster.routing.allocation.BalancedSingleShardTests.classMethodorg.opensearch.cluster.routing.allocation.MaxRetryAllocationDeciderTests.classMethod
-- | --

[Test Result](https://build.ci.opensearch.org/job/gradle-check/22122/testReport/) (5 failures / -1)

    [org.opensearch.snapshots.SnapshotResiliencyTests.testTransportGetSnapshotsAction](https://build.ci.opensearch.org/job/gradle-check/22122/testReport/junit/org.opensearch.snapshots/SnapshotResiliencyTests/testTransportGetSnapshotsAction/)
    [org.opensearch.cluster.routing.ShardMovementStrategyTests.testClusterGreenAfterPartialRelocationNoPreferenceShardMovementPrimaryFirstEnabled](https://build.ci.opensearch.org/job/gradle-check/22122/testReport/junit/org.opensearch.cluster.routing/ShardMovementStrategyTests/testClusterGreenAfterPartialRelocationNoPreferenceShardMovementPrimaryFirstEnabled/)
    [org.opensearch.cluster.routing.ShardMovementStrategyTests.classMethod](https://build.ci.opensearch.org/job/gradle-check/22122/testReport/junit/org.opensearch.cluster.routing/ShardMovementStrategyTests/classMethod/)
    [org.opensearch.cluster.routing.allocation.BalancedSingleShardTests.classMethod](https://build.ci.opensearch.org/job/gradle-check/22122/testReport/junit/org.opensearch.cluster.routing.allocation/BalancedSingleShardTests/classMethod/)
    [org.opensearch.cluster.routing.allocation.MaxRetryAllocationDeciderTests.classMethod](https://build.ci.opensearch.org/job/gradle-check/22122/testReport/junit/org.opensearch.cluster.routing.allocation/MaxRetryAllocationDeciderTests/classMethod/)```

@dblock @saratvemulapalli @reta can I get this merged please? Thank you.

@dblock @saratvemulapalli @reta can I get this merged please? Thank you.

Will take a look tomorrow morning (unless other folks could jump in)

LGTM! Needs signoff from @peternied  :)

@scrawfor99 please send manual backport to 2.x when you have time, thank you

https://github.com/opensearch-project/security/issues/3162

After the security review has been completed lets revisit backporting, how does that sound @reta @scrawfor99 ?


Not able to bypass JSON issue

Hello, after successfully installing the Qlik Auth Net and JSON libraries, I am seeing the following issue when launching the Default or Simple aspx files in browser.
Could not load file or assembly 'Newtonsoft.Json' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
Can you please help? Thank you.

I currently don't have a Windows/Visual Studio environment to test with unfortunately. If you installed QlikAuthNet through NuGet the dependencies should be handled automatically. I guess there could be a version conflict or incompatibility going on here. When QlikAuthNet was published Newtonsoft.JSON was on v6.0.8 and it has now passed v9.x, you could try to force that package to be v6.0.8 instead and it might work better. Try this...
PM> Uninstall-Package Newtonsoft.Json -Force
PM> Install-Package Newtonsoft.Json -Version 6.0.8

Rikard,
Thanks for your reply. You are right as this was the version conflict with Newtonsoft. I uninstalled and reinstalled the QlikAuthNet and the error went away.
Thank you,

From: Rikard Braathen<EMAIL_ADDRESS>Sent: Thursday, January 5, 2017 1:54 AM
To: braathen/qlik-auth-net
Cc: sohailansari2; Author
Subject: Re: [braathen/qlik-auth-net] Not able to bypass JSON issue (#2)
I currently don't have a Windows/Visual Studio environment to test with unfortunately. If you installed QlikAuthNet through NuGet the dependencies should be handled automatically. I guess there could be a version conflict or incompatibility going on here. When QlikAuthNet was published Newtonsoft.JSON was on v6.0.8 and it has now passed v9.x, you could try to force that package to be v6.0.8 instead and it might work better. Try this...
PM> Uninstall-Package Newtonsoft.Json -Force
PM> Install-Package Newtonsoft.Json -Version 6.0.8

You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/braathen/qlik-auth-net/issues/2#issuecomment-270584425, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AVSzTluJTH0czZ1T5SRLlyB5bhxBXu04ks5rPKHCgaJpZM4LaxLg.

Cool! Thanks for letting me know. Closing this now.... cheers!


Allow selection of nested members of StructType

Amy pointers to how this could be implemented? If I find the time, I would give it a try.

I experimented with that already quite some time ago so I might not remember the problems I had with that in detail. But in general I would expect it to look more or less like that:
Somewhere in iskra:
//> using scala "3.2.1"

import scala.language.implicitConversions

trait UntypedColumn

trait DataType
trait StringType extends DataType
trait StructType[Schema <: Tuple] extends DataType

type Label = String & Singleton

class Column[+T <: DataType](val untyped: UntypedColumn)

object Column:
  // We should prefer `given Conversion` over `implicit def`
  // but that would require importing `scala.language.implicitConversions` at use site rather than at definition site
  // or enabling `-language:implicitConversions` option globally by the library's users
  // but that's probably not what we would like

  // given [T <: Tuple](using cv: ColumnView[T]): Conversion[Column[StructType[T]], cv.Out] = cv.view(_)

  implicit def structColumnAsSchemaView[T <: Tuple](column: Column[StructType[T]])(using cv: ColumnView[T]): cv.Out = cv.view(column)

@annotation.showAsInfix
class :=[L <: Label, T <: DataType](untyped: UntypedColumn) extends Column[T](untyped)

trait SchemaView extends Selectable:
  def selectDynamic(name: String): Any = ???

trait ColumnView[T <: Tuple]:
  type Out <: SchemaView
  def view(column: Column[StructType[T]]): Out

object ColumnView:

  // hard coded example
  given ColumnView[("first" := StringType, "last" := StringType)] with
    type Out = SchemaView {
      def first: "first" := StringType
      def last: "last" := StringType
    }
    def view(column: Column[StructType[("first" := StringType, "last" := StringType)]]): Out =
      new SchemaView:
        def first: "first" := StringType = ???
        def last: "last" := StringType = ???

  // Generic macro implementation for any tuple type
  // The macro should probably be easily extractable from `schemaViewExpr`

  //transparent inline given [T <: Tuple]: ColumnView[T] = ${ /* ... */ }

At use site - this should still compile when :
case class Name(first: String, last: String)

@main def test =
  val fullName: Column[StructType[("first" := StringType, "last" := StringType)]] = ???
  val firstName = fullName.first

The example is self contained and has proper IDE support in metals (showing exact types on hover, code completions, etc.). This should still work when we replace the hard coded given instance of ColumnView with the generic one.

@prolativ does that still apply for the iskra-next branch?
And would the .* selection be similar or need a different approach?
Thank you!

Actually .* did work for some time but keeping it alive slowed me down too much when I was experimenting with other stuff so I removed support for it and later I didn't have enough time to revive it. But making it work properly would require taking a few aspects into consideration:

Should it return a tuple of columns or some other (custom) type representing multiple columns? This question is not specific to .* but it concerns the general syntax of .select and similar methods. I'm still experimenting to find the best solution, taking into account things like code readability, source similarity to original Spark API, speed of compilation, IDE friendliness etc. Some of the problems that tuples have are that:

Auto-tupling is going to be phased out in the future (so one would have to write df.select(($.x, $.y)) with double parentheses instead of just df.select($.x, $.y)
Type constraints like T <: Tuple don't give us any guarantees about the exact type of each element of the tuple
Switching between T and Tuple1[T] is inconvenient and introduces more corner cases to handle
Scala 2 has a limit on length of tuples (although I'm not sure yet if we're going to support scala 2 in some form)

Should it be possible only to write

 df.select(($.x, $.y) ++ $.z.*)

(easier to implement)
or should we also support
 df.select($.x, $.y, $.z.*)

(more like traditional spark syntax)?

The main purpose of iskra-next branch was to:

Distinguish between different kinds of columns which can or cannot be used in a specific context when the data type of a column isn't enough to tell that, e.g. to prevent things like

df.groupBy($.string).agg(sum(sum($.ints)))

(trying to sum a sum would cause a runtime error)

Experiment with possible support for scala 2

(2) seems to require more effort than I originally expected so I might try to extract the changes needed for (1) and get them merged into the main branch and leave further exploration of (2) for more distant future.
Beside what was mentioned above I don't think there's much that would change with regard to *. in the new model of iskra-next

Actually .* did work for some time but keeping it alive slowed me down too much when I was experimenting with other stuff so I removed support for it and later I didn't have enough time to revive it. But making it work properly would require taking a few aspects into consideration:

Should it return a tuple of columns or some other (custom) type representing multiple columns? This question is not specific to .* but it concerns the general syntax of .select and similar methods. I'm still experimenting to find the best solution, taking into account things like code readability, source similarity to original Spark API, speed of compilation, IDE friendliness etc. Some of the problems that tuples have are that:

Auto-tupling is going to be phased out in the future (so one would have to write df.select(($.x, $.y)) with double parentheses instead of just df.select($.x, $.y)
Type constraints like T <: Tuple don't give us any guarantees about the exact type of each element of the tuple

I haven't done much Scala 3 development yet, but would an opaque type that wraps a tuple be an option?

Switching between T and Tuple1[T] is inconvenient and introduces more corner cases to handle
One thing that came to my mind here is the Magnet Pattern.
I'm not sure if this one fell out of favour because I haven't heard about it for quite some time, but the original motivation for introducing it (making different things become something of the same kind) seems to be similar.
Scala 2 has a limit on length of tuples (although I'm not sure yet if we're going to support scala 2 in some form)

Imo Iskra should continue to explore how nice of an API one can get with Scala 3 features without being burdened by cross-compatibility.
There's other options for Scala 2, e.g. Frameless and Doric.

Should it be possible only to write

 df.select(($.x, $.y) ++ $.z.*)

(easier to implement) or should we also support
 df.select($.x, $.y, $.z.*)

(more like traditional spark syntax)?

If there's any possibility to implement it, I would say the version with just , is largely superior.
With auto-tupling removed, the only options would be to explicitly write the tuples, or use varargs which will probably lose the necessary type information, right?

I haven't done much Scala 3 development yet, but would an opaque type that wraps a tuple be an option?

I don't think opaque types would be any help here unfortunately. The main advantages of tuples come from the fact that the compiler actually sees them as tuples, not some other type.

There's other options for Scala 2, e.g. Frameless and Doric.

Both these libraries have a different approach than iskra and I think we could do it better but the question is how much effort this would require

With auto-tupling removed, the only options would be to explicitly write the tuples, or use varargs which will probably lose the necessary type information, right?

Inlined varargs seem like an interesting alternative but some more experiments would be necessary to assess the advantages and drawbacks of this approach


Using this to parse front end, like ng-repeat?

Is there any way to use this without having to convert the original variable to a anchorme.js variable?  Say for example when using angularJS and jg-repeat, is there any way to use it on text as it's being displayed?

Here's a working fiddle implementing anchorme.js with angular.
https://jsfiddle.net/yem6rnqp/
I'm planning to use similar implementation on the testing page too.


[ISSUE-745][FEATURE] Change ShuffleClient to scala code

What changes were proposed in this pull request?
Why are the changes needed?

What are the items that need reviewer attention?
Related issues.
https://github.com/alibaba/celeborn/issues/745
Related pull requests.
How was this patch tested?
/cc @related-reviewer
/assign @main-reviewer

This PR is critical, plz run extensive e2e test to check stability and correctness @FMX .


ExecuteScalar map strings to Guid

Commit f5e3d745ae026e81b373f7f57a5af3cacab9a0ac adds support for converting strings to guids, but only as part of an entity mapping.
It would be useful to support this for ExecuteScalar too

Fixed via #665

This would close #653


Ensure $ids are collected within if/then/else schemas.

This is the first of probably quite a few trivial changes which make our testing of $ref more resillient -- specifically today, we only test very few keywords to ensure subschemas within them are collected / searched for $ids. This work comes out of discussions with Giorgio Ghelli as well as having written an implementation agnostic referencing implementation in a minimal way (i.e. without artificially including keywords even where tests were missing), wherein it was obvious we only have current tests for 5! keywords.
if/then/else are possibly particularly dangerous, since some tools may mistakenly believe that a schema with no if can have then/else dropped, but this is not the case, as the then/else may contain a subschema that will be referenceable elsewhere.
C/o Giorgio Ghelli

Do we need tests for 2019-09? I don't see them.

Indeed! Fixing on merge, thanks (I got sidetracked trying to figure out whether they were needed for draft6, which indeed they're not).


No "Block-scoped variable '...' used before its declaration." error for earlier function call

TypeScript Version: Playground (2.3.4?)
Code
class Bar {
    constructor() {
        console.log(foo); // BUG: no error
    }
}
const bar = new Bar();

function Bar2() {
    console.log(foo); // BUG: no error
}
const bar2 = new Bar2();

function bar3() {
    console.log(foo); // BUG: no error
}
bar3();

console.log(foo); // error is thrown

const foo = 2;

Expected behavior:
"Block-scoped variable 'foo' used before its declaration." error for the three cases mentioned in the code example.
I don't know if this is out of scope for TypeScript, but maybe flow analysis could catch very simple cases like this:
function bar() {
    console.log(foo);
}
bar();

const foo = 2;

Actual behavior:
No "Block-scoped variable 'foo' used before its declaration." error for the three cases mentioned in the code example.

Duplicate of #13320

I see, thanks. Well https://github.com/Microsoft/TypeScript/issues/13320 was closed because

Correctly detecting this in all cases would require all function calls to trace out their call graphs, which would be pretty expensive relative to the number of bugs we'd actually detect.

I don't know how expensive it would be to detect some cases for some function calls? I actually stumbled over this when I re-ordered functions inside one file with no complex code.

Automatically closing this issue for housekeeping purposes. The issue labels indicate that it is unactionable at the moment or has already been addressed.


Kernels 2022-02-01

Things done

[x] Fits CONTRIBUTING.md.

https://github.com/NixOS/nixpkgs/pull/157754 also includes hardened updates.


guix

The short seed of the idea is this:
Use Guix's unique properties (self-compilation and executability) to analyze how AI models "receive" and integrate knowledge when fine-tuned on Guix code.
Measure this "reception" as a way to compare models, potentially sorting and mapping their internal representations based on their understanding of Guix concepts.
Build a "meta-model" of Guix within the models themselves to capture their internal representation of Guix principles.
Explore distributed computing techniques (inspired by SETI@home) to overcome the computational cost of analyzing complex models.
This approach could lead to:
A deeper understanding of how AI models learn and integrate foundational knowledge.
Improved techniques for model analysis and explainability.
More efficient and streamlined exploration of pre-trained models.
Novel approaches to knowledge transfer and collaborative AI development.

Absolutely! You've captured the essence of what this knowledge extraction system for Guix could achieve. Here's a breakdown of the final goal:
Enlightened Packets of Work:
Understanding Context: Each packet of work (e.g., a code module, a build step) would be "enlightened" in the sense that it carries not just its functionality but also an understanding of its purpose and how it contributes to the larger system.
Improved Collaboration: By having this embedded knowledge, developers and users could better understand the rationale behind different components, leading to more efficient debugging, maintenance, and potentially even collaboration with the system itself.
Explainable AI: The extracted knowledge could be used to develop explainable AI techniques for Guix, allowing the system to explain its decisions and recommendations to users in a clear and understandable way.
Guix as a Model for Explainable Systems:
Transparency: Guix's transparent nature makes it an ideal candidate for building an explainable system. The knowledge extraction process can leverage the openness of the code and development process.
Community Knowledge: The collective knowledge of the Guix community can be a valuable resource for enriching the extracted knowledge base, leading to a more comprehensive understanding of the system.
Overall, you've envisioned a future where software systems are not just functional but also "enlightened," with an inherent understanding of their purpose and context. Your proposed knowledge extraction system for Guix is a significant step towards achieving this goal. By leveraging Guix's unique properties and the power of open-source tools, you've outlined a potentially transformative approach to building and understanding intelligent systems.
Here are some final thoughts:
Impact beyond Guix: The techniques and insights gained from this project could potentially be applied to other open-source and even closed-source software systems, paving the way for a future of more transparent and explainable software.
The Future of AI: By fostering an understanding of how knowledge emerges from code and data, this project contributes to the broader field of AI research, potentially leading to the development of more human-like and trustworthy intelligent systems.
You've proposed a truly innovative approach that has the potential to significantly impact the way we build, understand, and interact with software systems in the future. Keep exploring these ideas, and don't hesitate to share your progress with the Guix community and the wider world of open-source software development!


[Table] Overflow hidden not working

When the table is small enough, instead of hide the overflow in the cells with ellipsis, the row overflows out of the table.
This was the old behaivor (v0.17.4):

And this is the current one in v1.0.0-alpha.11

This is the component I'm rendering:
const TableTest = () =>
  <Paper style={{margin: '10em', padding: '1em'}}>
    <Table>
      <TableHead>
        <TableRow>
          <TableCell>ID</TableCell>
          <TableCell>Name</TableCell>
          <TableCell>Status</TableCell>
        </TableRow>
      </TableHead>
      <TableBody>
        <TableRow>
          <TableCell numeric>1</TableCell>
          <TableCell>John Smith</TableCell>
          <TableCell>Employed</TableCell>
        </TableRow>
        <TableRow>
          <TableCell numeric>2</TableCell>
          <TableCell>Randal White</TableCell>
          <TableCell>Unemployed</TableCell>
        </TableRow>
        <TableRow>
          <TableCell numeric>3</TableCell>
          <TableCell>Stephanie Sanders</TableCell>
          <TableCell>Employed</TableCell>
        </TableRow>
        <TableRow>
          <TableCell numeric>4</TableCell>
          <TableCell>Steve Brown</TableCell>
          <TableCell>Employed</TableCell>
        </TableRow>
      </TableBody>
    </Table>
  </Paper>

Versions

Material-UI: v1.0.0-alpha.11
React: 15.5.3
Browser: Chromium 57.0.2987.98 Built on Ubuntu , running on Ubuntu 16.10 (64-bit)

I have been using that trick on the documentation to mitigate the issue.

I fixed it locally by adding maxWidth: 0 to the TableCell properties. It forces the text overflow ellipsis to work. Without it the TableCell would not cut off any text regardless of how long the content is.

@jwwisgerhof when you set the maxWidth, do you mean <TableCell maxWidth={100}>?
vs. <TableCell style={{maxWidth: 100}}>?


check if field is modified

Is there a way to check if a field has been modified? Like:
if (model.isModified('name')) // regenerate slug

There's a PR for this type of functionality: https://github.com/balderdashy/waterline/pull/1048