Error while creating the log directory

If the runtime directory is not writable, then the error message says:
Trying to get property of non-object in Dispatcher.php on line 181
Which is not helpful at all.
This is because the error happens while executing Dispatcher::init, hence the targets are not properly initialized.

Was trying to reproduce but i got just Permission denied error which is ok.@kasparsj can you comment on it?

No feedback for a long time and it doesn't seem to be reproduceable. Closing.

got the same error when runtime is not writable

@herokiller what is the error exactly? How to reproduce it?

@samdark PHP Notice:  Trying to get property of non-object in /home/vladimir/lolmanga/vendor/yiisoft/yii2/log/Dispatcher.php on line 181
when both runtime and web/assets directories are not writable

@herokiller can you give a stack trace?

Same issue here. As @cebe requested the stack trace:
Stack trace:
#0 /vendor/yiisoft/yii2/filters/auth/AuthMethod.php(56): yii\filters\auth\AuthMethod->handleFailure(Object(yii\web\Response))
#1 /vendor/yiisoft/yii2/base/ActionFilter.php(71): yii\filters\auth\AuthMethod->beforeAction(Object(yii\web\ErrorAction))
#2 [internal function]: yii\base\ActionFilter->beforeFilter(Object(yii\base\ActionEvent))
#3 /vendor/yiisoft/yii2/base/Component.php(541): call_user_func(Array, Object(yii\base\ActionEvent))
#4 /vendor/yiisoft/yii2/base/Controller.php(263): yii\base\Component->trigger('beforeAction', Object(yii\base\ActionEvent))
#5 /vendor/yiisoft/yii2/web/Controller.php(108): yii\base\Controller->beforeAction(Object(yii\web\Er" while reading upstream

Unable to reproduce, need a stack trace to dig deeper into it.

Hello everyone,
I can confirm that an issue - more or less - but it seems that the problem is not related to creating the log directory. In my case I am trying to access a custom component which is throwing an exception because the configuration file does not exists. Below you can find the output from NGINX and the content from my the default logging component (yii\log\FileTarget).
[error] 24#24: *25 FastCGI sent in stderr: "PHP message: PHP Notice:  Trying to get property of non-object in /path/vendor/yiisoft/yii2/log/Dispatcher.php on line 181
PHP message: PHP Notice:  Trying to get property of non-object in /path/vendor/yiisoft/yii2/log/Dispatcher.php on line 181
PHP message: PHP Notice:  Trying to get property of non-object in /path/vendor/yiisoft/yii2/log/Dispatcher.php on line 181" while reading upstream, client: <IP_ADDRESS>, server: my.domain.com, request: "GET /api/ HTTP/1.1", upstream: "fastcgi://<IP_ADDRESS>:9000", host: "my.domain.com"

[error][yii\base\InvalidConfigException] yii\base\InvalidConfigException: Config file /path/config/amqp/config.yml is not reachable! in /path/vendor/mylib/yii2-amqp/src/components/Amqp.php:118
Stack trace:
#0 /path/vendor/mylib/yii2-amqp/src/components/Amqp.php(150): mylib\components\Amqp->getConfigFile()
#1 /path/vendor/mylib/yii2-amqp/src/components/Amqp.php(164): mylib\components\Amqp->getAmqpConfig()
#2 /path/vendor/mylib/yii2-amqp/src/components/Amqp.php(135): mylib\components\Amqp->getAmqpConfigProcessor()
#3 /path/components/log/MonitoringTarget.php(40): mylib\components\Amqp->getBuilder()
#4 /path/vendor/yiisoft/yii2/base/Object.php(107): app\components\log\MonitoringTarget->init()
#5 [internal function]: yii\base\Object->__construct(Array)
#6 /path/vendor/yiisoft/yii2/di/Container.php(372): ReflectionClass->newInstanceArgs(Array)
#7 /path/vendor/yiisoft/yii2/di/Container.php(151): yii\di\Container->build('app\\components\\...', Array, Array)
#8 /path/vendor/yiisoft/yii2/BaseYii.php(344): yii\di\Container->get('app\\components\\...', Array, Array)
#9 /path/vendor/yiisoft/yii2/log/Dispatcher.php(101): yii\BaseYii::createObject(Array)
#10 /path/vendor/yiisoft/yii2/base/Object.php(107): yii\log\Dispatcher->init()
#11 /path/vendor/yiisoft/yii2/log/Dispatcher.php(89): yii\base\Object->__construct(Array)
#12 [internal function]: yii\log\Dispatcher->__construct(Array)
#13 /path/vendor/yiisoft/yii2/di/Container.php(372): ReflectionClass->newInstanceArgs(Array)
#14 /path/vendor/yiisoft/yii2/di/Container.php(151): yii\di\Container->build('yii\\log\\Dispatc...', Array, Array)
#15 /path/vendor/yiisoft/yii2/BaseYii.php(344): yii\di\Container->get('yii\\log\\Dispatc...', Array, Array)
#16 /path/vendor/yiisoft/yii2/di/ServiceLocator.php(133): yii\BaseYii::createObject(Array)
#17 /path/vendor/yiisoft/yii2/base/Application.php(302): yii\di\ServiceLocator->get('log')
#18 /path/vendor/yiisoft/yii2/web/Application.php(63): yii\base\Application->bootstrap()
#19 /path/vendor/yiisoft/yii2/base/Application.php(267): yii\web\Application->bootstrap()
#20 /path/vendor/yiisoft/yii2/base/Object.php(107): yii\base\Application->init()
#21 /path/vendor/yiisoft/yii2/base/Application.php(206): yii\base\Object->__construct(Array)
#22 /path/web/index.php(11): yii\base\Application->__construct(Array)
#23 {main}

After going to the Dispatcher I checked the configured targets. Inspecting each one of them (FileTarget, MonitoringTarget) I discovered that MonitoringTarget does not have all member variables from the abstract yii\log\Target, but for the FileTarget component it seems to be working. The implementation for the MonitoringTarget looks like this:
use Yii;
use yii\log\Target;
class MonitoringTarget extends Target
{
  public function init() { parent:init(); }
  public function export() { /* Handle the messages */ }
}

This happens on Debian 8.3 with PHP 7.0.4.
PHP 7.0.4-1~dotdeb+8.1 (cli) ( NTS )
Copyright (c) 1997-2016 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies
    with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, by Zend Technologies

and I just discovered this while porting the application to Docker. If you need more information let me know and I will try to gather it for you guys.

I Had this error and i fixed installing php5-curl:
sudo apt-get install php5-curl
This fixed my problem with this error
2016/03/16 20:00:28 [error] 7983#0: *12 FastCGI sent in stderr: "PHP message: PHP Notice:  Trying to get property of non-object in yiisoft/yii2/log/Dispatcher.php on line 181" while reading upstream,

Can't do anything based on information provided. Closing.


a11y scrolling broken when TalkBack/VoiceOver are turned on after app was launched

Just tested this on master in the gallery.

It's only broken if VoiceOver is turned on after the app has been launcher. If VoiceOver was on before app is launched it works as expected.

If VoiceOver is tuned on after app launch, the scrolling information are missing from the tree:
SemanticsNode#0(Rect.fromLTRB(0.0, 0.0, 750.0, 1334.0))
└SemanticsNode#1(Rect.fromLTRB(0.0, 0.0, 375.0, 667.0) scaled by 2.0x, nextNodeId: 10, previousNodeId: -1)
 └SemanticsNode#10(Rect.fromLTRB(0.0, 0.0, 375.0, 667.0), nextNodeId: 9, previousNodeId: 1)
  ├SemanticsNode#9(Rect.fromLTRB(0.0, 20.0, 56.0, 76.0), actions: [tap], button, label: "Open navigation menu", textDirection: ltr, nextNodeId: 8, previousNodeId: 10)
  ├SemanticsNode#8(Rect.fromLTRB(0.0, 0.0, 121.0, 24.0) with transform [1.5,0.0,0.0,96.75; 0.0,1.5,0.0,224.0; 0.0,0.0,1.0,0.0; 0.0,0.0,0.0,1.0], label: "Flutter Gallery", textDirection: ltr, nextNodeId: 2, previousNodeId: 9)
  ├SemanticsNode#2(merge boundary ⛔, Rect.fromLTRB(0.0, 276.0, 375.0, 324.0), label: "Demos", textDirection: ltr, nextNodeId: 3, previousNodeId: 8)
  ├SemanticsNode#3(Rect.fromLTRB(0.0, 324.0, 375.0, 396.0), actions: [tap], label: "Pesto\nSimple recipe browser", textDirection: ltr, nextNodeId: 4, previousNodeId: 2)
  ├SemanticsNode#4(Rect.fromLTRB(0.0, 396.0, 375.0, 468.0), actions: [tap], label: "Shrine\nBasic shopping app", textDirection: ltr, nextNodeId: 5, previousNodeId: 3)
  ├SemanticsNode#5(Rect.fromLTRB(0.0, 468.0, 375.0, 540.0), actions: [tap], label: "Contact profile\nAddress book entry with a flexible appbar", textDirection: ltr, nextNodeId: 6, previousNodeId: 4)
  ├SemanticsNode#6(Rect.fromLTRB(0.0, 540.0, 375.0, 612.0), actions: [tap], label: "Animation\nSection organizer", textDirection: ltr, nextNodeId: 7, previousNodeId: 5)
  └SemanticsNode#7(Rect.fromLTRB(0.0, 612.0, 375.0, 667.0), actions: [tap], label: "Video\nVideo playback", textDirection: ltr, nextNodeId: -1, previousNodeId: 6)

Node 10 should have been:
 └SemanticsNode#10(Rect.fromLTRB(0.0, 0.0, 375.0, 667.0), actions: [scrollUp], nextNodeId: 9, previousNodeId: 1, scrollExtentMin: 0.0, scrollPosition: 0.0, scrollExtentMax: 3145.0)

Also: This problem is also present on Android. If TalkBack is turned on while the app is running, a11y scrolling doesn't work at all. Gonna rename the issue.


Planning& Dreamview: Idle gear shift time

Reverse Path point theta in Planning
Idle Time for gear shifting
related fix on Sim control "PublishLocalization" by reverting the reverse of theta

LGTM, @siyangy @unacao Please also review

is this tested in Dreamview already? Does the car show the correct forward heading with backward motion when in reverse gear?


I have crop_avtar folder cropping image using modal,but its not working on windows in chrome and mac in chrome.

Before opening an issue:

Search for duplicate or closed issues
Prepare a reduced test case for any bugs
Read the contributing guidelines

When asking general "how to" questions:

Please do not open an issue here
Instead, ask for help on StackOverflow

When reporting a bug, include:

Operating system and version (Windows, Mac OS X, Android, iOS, Win10 Mobile)
Browser and version (Chrome, Firefox, Safari, IE, MS Edge, Opera 15+, Android Browser)
Reduced test cases and potential fixes using JS Bin, JSFiddle or CodePen

When suggesting a feature, include:

As much detail as possible for what we should add and why it's important to Cropper
Relevant links to prior art, screenshots, or live demos whenever possible

I have download folder in example crop_avtar folder cropping image using modal,but its not working on windows in chrome and mac in chrome.
Can you please help anyone?

I just test it, it works fine. Did you read the README.md? Maybe it is your PHP config problem.


pub.dev release version is still on 1.0.4

Hi,
pub get failed (1; Because xxx depends on qrcode ^1.0.5 which doesn't match any versions, version
solving failed.)

@SiriDx Any chance you could get the new version on pub.dev?

breaking change on minSdkVersion, from 16(current) to 24, by THIS PR, because com.journeyapps:zxing-android-embedded:4.1.0 change minSdkVersion to 24, can we just use com.journeyapps:zxing-android-embedded:3.6.0?
@SiriDx


Fix HIP deprecation warnings

This fixes most warnings present in current ROCm builds:

use hipsparse/hipsparse.h instead of hipsparse.h, similar for other includes
remove -funsafe-fp-atomics flag, as it doesn't seem available in the compilers any more

This needs more work, as the header changes happened some time after 5.0

is not -munsafe-fp-atomics supported anymore?
If you only mean the warning output, the flag is somehow parsed in two places (device and host, I guess) but it's only available in device part.
as we showed the performance improvement in slack, I do not think it is not supported.

See the latest changes, the warning came from another compiler pass, I added a workaround for it and removed the other changes.

format-rebase!


Fix for  issue 96.

Added tests for all the types.
Related issue(s):
Fixes #96

@jasperpotts I aded the extra check. I added the check to make sure we have enough limit (which is a fast fail - without having the actual read). It does make sense to do the check after the read as well, so added code there as well. Thanks!

We also need to check that all cases are covered. In protobuf there are a few core data types, fixed length, variant and length encoded. All length encoded data we need to make sure all of the specified length bytes are read or throw exception. Otherwise we can start processing the remaining data as a different field and get corrupt data. Length encoded includes, strings, bytes and sub-messages as maybe others.

We should also check anywhere we do a bulk read of bytes with int getBytes(byteArray) style method that we check the returned number of bytes read matches expected. We have choice to loop and keep reading till all bytes are read or throw exception.


restartableLatestCache with combined Observables

Hi, i'm trying to use the method restartableLatestCache() returning in the frist parameter a combined Observable which we can create using the method Observable.zip, as follow:
final Observable<MovieDetail> movieDetailsObservable = App.getServerApi().getMovieDetail(movieId)
                .subscribeOn(Schedulers.newThread())
                .observeOn(AndroidSchedulers.mainThread());

final Observable<MovieDetail>movieImagesObservable =App.getServerApi().getMovieImages(movieId)
                .subscribeOn(Schedulers.newThread())
                .observeOn(AndroidSchedulers.mainThread());

        final Observable<MovieDetail> combined = Observable.zip(movieDetailsObservable, movieImagesObservable, new Func2<MovieDetail, MovieDetail, MovieDetail>() {
            @Override
            public MovieDetail call(MovieDetail movieDetail, MovieDetail movieImage) {
                movieDetail.setBackdrops(movieImage.getBackdrops());
                movieDetail.setPosters(movieImage.getPosters());
                return movieDetail;
            }
        });

restartableLatestCache(REQUEST_MOVIE_DETAIL,
                new Func0<Observable<MovieDetail>>() {
                    @Override
                    public Observable<MovieDetail> call() {
                        return combined;
                    }
                },
                new Action2<MovieDetailActivity, MovieDetail>() {
                    @Override
                    public void call(MovieDetailActivity activity, final MovieDetail response) {
                        activity.fillMovieDetails(response);
                    }
                },
                new Action2<MovieDetailActivity, Throwable>() {
                    @Override
                    public void call(MovieDetailActivity activity, Throwable throwable) {
                        //TODO handle error
                    }
                });

When this code executes nothing happens, there is no result, the callbacks are not called. But if i execute directly using "subscribe", it works, as follow:
combined.subscribe(new Subscriber<MovieDetail>() {
            @Override
            public void onCompleted() {
            }
            @Override
            public void onError(Throwable e) {
            }
            @Override
            public void onNext(MovieDetail movieDetail) {
                getView().fillMovieDetails(movieDetail);
            }
        });

Do you have any idea why it is not working? Is it a bug from nucleus api?

You need to call start(REQUEST_MOVIE_DETAIL) at some point

I have the start called, i just didn't put this part of code. the method restartableLatestCache actually return a http 404. But when i execute using .subscribe as shown in the code it works well.

I see no way Nucleus can be connected with http 404. It just connects observables with views, it does not change views itself. It does not send any information to your server.

What you mean? is it not weird when i execute via restartable() returns a 404 and when i execute via rxjava it returns ok? Could you test it in some of your projects?


Unmarshalling cyclic objects crashes the interpreter

To test this, simply evaluate process, which seems to be cyclic in Node 0.10.25.

This needs to be readdressed, see #48.

This has been readdressed in #48, but the new solution doesn't completely fix arrays.
Example of a valid JavaScript array that cannot be unmarshaled (an exception is thrown in Lambda):
var x = [];
x.push(x);


How to show multiple dates with different color on this calendar?

Hey there thanks for such an amazing calendar. This is more of a doubt than an issue. The thing is I have multiple arrays of date. I want to show each array of dates with different highlighted colours. Each array can contain different dates for a particular month I want dates to be highlighted according to each array and all of them should be in the calendar, even when we are selecting some other different dates of that particular month.

I want the calendar to look like the screenshot. Could you please help me achieve this.

Sorry for the late reply, and the short response, but
This library is exactly a UICollectionView. The same way you would change colors of a cell based on data in an array for a UICollectionView, is the exact same way you should do it for this library.
Will close this issue, but let me know if it helped.

Thank you for helping me out. That worked I have done that accordingly
On Wed 26 Sep, 2018, 9:36 PM JTAppleCalendar<EMAIL_ADDRESS>wrote:

Sorry for the late reply, and the short response, but
This library is exactly a UICollectionView. The same way you would change
colors of a cell based on data in an array for a UICollectionView, is the
exact same way you should do it for this library.
Will close this issue, but let me know if it helped.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/patchthecode/JTAppleCalendar/issues/899#issuecomment-424769745,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ApM4WtOYCJMVc6jTSU4eJmPnW6BG5DCTks5ue6YcgaJpZM4WrkZt
.


support GitHub enterprise and hosted GitHub on GithubDeployments plugin

Hey, I just made a Pull Request!
GithubDeployments support for GitHub Enterprise and self-hosted GitHub.
:heavy_check_mark: Checklist

[x] A changeset describing the change and affected packages. (more info)
[x] Added or updated documentation
[x] Tests for new functionality and regression tests for bug fixes
[ ] Screenshots attached (for UI changes)
[x] All your commits have a Signed-off-by line in the message. (more info)

@Rugvip Possible to get another look at this?


Create ice-fabric-intro

adding an introduction to ice fabric, to be followed up with methods for measurement and more details on the math

Nice! Thanks for contributing this!
One question is if you want this to appear in the book now. If so, you will need to update _toc.yaml to reference your new .md file. You would need to add something like
- caption: Ice Fabric
  chapters:
  - file: sections/ice_fabric/ice-fabric-intro.md


powerCheck: make 5V warning threshold 0.1V lower

Describe problem solved by this pull request
Follow up closes https://github.com/PX4/Firmware/pull/14898
Because of warnings on every flight on setups without
any need for concern. Some even high quality supply voltage regulators
that are rated for 5V can with tolerances and load get lower than 4.9V.
Describe your solution
See discussion here: https://github.com/PX4/Firmware/pull/14898#issuecomment-628026895

Repeating myself, I'm fine with this change given how people are actually using this (getting frustrated and disabling the check entirely). I think an argument could even be made to remove the caution warnings and only keep the hard failure thresholds. If it's not actionable it's just ignored anyway.


Angular 4.4.1 does not work with datatables

Bug Report
ERROR in Error encountered resolving symbol values statically. Function calls are not supported. Consider replacing the function or lambda with a reference to an exported function (position 194:50 in the original .ts file), resolving symbol NgModule in<EMAIL_ADDRESS>resolving symbol DataTablesModule in /home/aduncan/Documents/dockstore-ui2/node_modules/angular-datatables/src/angular-datatables.module.d.ts, resolving symbol DataTablesModule in /home/aduncan/Documents/dockstore-ui2/node_modules/angular-datatables/src/angular-datatables.module.d.ts
Expected behaviour
No error.
Actual behaviour
Project won't build.
Researched the problem, found the following link. Scroll to the bottom.
This solution seems to not work for angular 4.4.1
Steps to reproduce the behaviour
Having angular 4.4.1 installed will cause these errors.

@garyluu  mentioned that a datatables update might be available

We do not use Angular 4.4.1 anymore.  Coincidentally, we do use Angular-datatables 4.4.1 but we don't get this error anymore


Error in the unexpected Count in data verification failure

@kedarbcs16 have you tested to make sure it works?
+1, Looks good to me.

Do we know why the count is not the same as the size of the list?

LGTM.  +1

+1.


wp_title() throws deprecated warning in WordPress 4.4

Called by TimberHelper::get_wp_title()

For those wanting to ignore this in their tests, you can overload WP_UnitTestcase::expectedDeprecated():
/**
 * Overload WP_UnitTestcase to ignore deprecated notices
 * thrown by use of wp_title() in Timber
 */
public function expectedDeprecated() {
	if ( false !== ( $key = array_search( 'wp_title', $this->caught_deprecated ) ) ) {
		unset( $this->caught_deprecated[ $key ] );
	}
	parent::expectedDeprecated();
}

Do you know if this is resolved @jarednova

Yes! The main issue that @danielbachhuber points out (the error being thrown) is resolved. It would still be ideal to remove wp_title entirely as it's deprecated, but that's out-of-scope for this ticket (and brings up a bunch of other questions about backwards compatibility vs. ideal output)


Disable not-working Frame Formulation auto-complete

Description
The auto-complete feature on the Frame Formulation page does not work as the scripts are blocked by the CSP.
Removing the auto-complete feature as there are not many options in the select menu and it isn't needed.

Also removing the govuk-country-and-territory-autocomplete which doesn't appear to be used

JIRA ticket(s)
https://regulatorydelivery.atlassian.net/browse/COSBETA-1949
Screenshots/video
Before:

After:
No error in console on 'Choose frame formulation' page

Review apps

https://cosmetics-pr-2946-submit-web.london.cloudapps.digital/
https://cosmetics-pr-2946-search-web.london.cloudapps.digital/
Checklist

[ ] All automated checks are passing locally (tests, linting etc)
[ ] Accessibility testing has been done (where appropriate)

[ ] Usable with JavaScript off
[ ] Usable with CSS off
[ ] Usable on a small screen (e.g. mobile phone)
[ ] Usable with just a keyboard
[ ] Usable with a screen reader
[ ] Usable at 400% zoom

[ ] Automated tests have been added or updated
[ ] Documentation has been added or updated
[ ] Database seeds have been updated
[ ] Database migrations have been tested (both up and down) and are safe (e.g. stop using a column before removing it)
[ ] A feature flag has been added (if required in the ticket; a ticket has also been added to remove the feature flag once deployment is completed)
[ ] Comms have been sent to users (if required in the ticket)

Post-deploy tasks

Closing this as direction from the business is to retain the autocomplete feature


What PMD modules to use?

Now we are declare to use:

Java -> Basic
Java -> Strict Exceptions

Actually we compliant with:

Java -> Basic

There are more other modules:

java
**    Android
**    Basic
**    Braces
**    Clone Implementation
**    Code Size
**    Comments
**    Controversial
**    Coupling
**    Design
**    Empty Code
**    Finalizer
**    Import Statements
**    J2EE
**    JavaBeans
**    JUnit
**    Jakarta Commons Logging
**    Java Logging
**    Migration
**    Naming
**    Optimization
**    Strict Exceptions
**    String and StringBuffer
**    Security Code Guidelines
**    Type Resolution
**    Unnecessary
**    Unused Code

So, what modules we are going to use?

Talk to @mpeter28 about the rule that he likes to disable.
Propose some good new rules to add
Review with the group and update

@SMxJrz

Untagging this from 2.2 unless there is more interest.


[FEA] Allow users to specify custom Dependency jars

Signed-off-by: Ahmed Hussein<EMAIL_ADDRESS>Fixes #1359
Add a new input argument that takes a path to a yaml file --tools_config_file The config file allows the users to define their own binaries that need to be added to the classpath of the tools jar cmd. This change is important because users can use the user-tools wrapper with their custom spark.
Sample usage and specifications

the dependenices can be https: or file:///

assume that the spark binaries are for spark-3.3.1-bin-hadoop3 which exists on local disk: /local/path/to/spark-3.3.1-bin-hadoop3.tgz

We can define the config-file /home/tools-conf.yaml as follows:
info:
  api_version: '1.0'
runtime:
  dependencies:
    - name: my-spark331
      uri: file:///local/path/to/spark-3.3.1-bin-hadoop3.tgz
      dependency_type:
        dep_type: archive
        # for tgz files, it is required to give the subfolder where the jars are located
        relative_path: jars/*

now, we can run the python command as :
spark_rapids profiling \
  --tools_config_file /home/tools-conf.yaml \
  --output_folder $LOCAL_OUTPUT_DIR \
  --eventlogs $LOCAL_GPU_EVENT_LOGS \
  --tools_jar $LOCAL_JAR \
  --verbose

Assume that there are more jar files needed for the classpath, then the user can define an array of dependencies
info:
  api_version: '1.0'
runtime:
  dependencies:
    - name: Hadoop AWS
      uri: https://repo1.maven.org/maven2/org/apache/hadoop/hadoop-aws/3.3.4/hadoop-aws-3.3.4.jar
      verification:
        size: 962685
    - name: AWS Java SDK Bundled
      uri: https://repo1.maven.org/maven2/com/amazonaws/aws-java-sdk-bundle/1.12.262/aws-java-sdk-bundle-1.12.262.jar
      verification:
        file_hash:
          algorithm: sha1
          value: 02deec3a0ad83d13d032b1812421b23d7a961eea
    - name: spark-3.5.0
      uri: https:///archive.apache.org/dist/spark/spark-3.5.0/spark-3.5.0-bin-hadoop3.tgz
      verification:
        file_hash:
          algorithm: sha512
          value: 8883c67e0a138069e597f3e7d4edbbd5c3a565d50b28644aad02856a1ec1da7cb92b8f80454ca427118f69459ea326eaa073cf7b1a860c3b796f4b07c2101319
      dependency_type:
        dep_type: archive
        relative_path: jars/*

The specification of the file is as follows

---
"$defs":
  DependencyType:
    description: Represents the dependency type for the jar cmd
    enum:
    - jar
    - archive
    - classpath
    title: DependencyType
    type: string
  DependencyVerification:
    description: The verification information of the dependency.
    properties:
      size:
        default: 0
        description: The size of the dependency file.
        examples:
        - 3265393
        title: Size
        type: integer
      file_hash:
        "$ref": "#/$defs/FileHashAlgorithm"
        default:
        description: The hash function to verify the file
        examples:
        - algorithm: md5
          value: bc9bf7fedde0e700b974426fbd8d869c
    title: DependencyVerification
    type: object
  FileHashAlgorithm:
    description: |-
      Represents a file hash algorithm and its value. Used for verification against an
      existing file.
      ```py
      try:
          file_algo = FileHashAlgorithm(algorithm=HashAlgorithm.SHA256, value='...')
          file_algo.verify_file(CspPath('file://path/to/file'))
      except ValidationError as e:
          print(e)
      ```
    properties:
      algorithm:
        "$ref": "#/$defs/HashAlgorithm"
      value:
        title: Value
        type: string
    required:
    - algorithm
    - value
    title: FileHashAlgorithm
    type: object
  HashAlgorithm:
    description: Represents the supported hashing algorithms
    enum:
    - md5
    - sha1
    - sha256
    - sha512
    title: HashAlgorithm
    type: string
  RuntimeDependency:
    description: |-
      The runtime dependency required by the tools Jar cmd. All elements are downloaded and added
      to the classPath.
    properties:
      name:
        description: The name of the dependency
        title: Name
        type: string
      uri:
        anyOf:
        - format: uri
          minLength: 1
          type: string
        - format: file-path
          type: string
        description: The FileURI of the dependency. It can be a local file or a remote
          file
        examples:
        - file:///path/to/file.jar
        - https://mvn-url/24.08.1/rapids-4-spark-tools_2.12-24.08.1.jar
        - gs://bucket-name/path/to/file.jar
        title: Uri
      dependency_type:
        "$ref": "#/$defs/RuntimeDependencyType"
        description: The type of the dependency and how to find the lib files after
          decompression.
      verification:
        "$ref": "#/$defs/DependencyVerification"
        default:
        examples:
        - size: 3265393
        - fileHash:
            algorithm: md5
            value: bc9bf7fedde0e700b974426fbd8d869c
    required:
    - name
    - uri
    title: RuntimeDependency
    type: object
  RuntimeDependencyType:
    description: |-
      Defines the type of dependency. It can be one of the following:
         - Archived file (.tgz)
         - Simple JAR file (*.jar)
         - Classpath directory (not yet supported)

      Note: The 'classpath' type is reserved for future use, allowing users to point to a directory
      in the classpath without needing to download or copy any binaries.
    properties:
      dep_type:
        "$ref": "#/$defs/DependencyType"
        description: The type of the dependency
      relative_path:
        default:
        description: The relative path of the dependency in the classpath. This is
          relevant for tar files
        examples:
        - jars/*
        title: Relative Path
        type: string
    required:
    - dep_type
    title: RuntimeDependencyType
    type: object
  ToolsConfigInfo:
    description: |-
      High level metadata about the tools configurations (i.e., the api-version and any other relevant
      metadata).
    properties:
      api_version:
        description: The version of the API that the tools are using. This is used
          to test the compatibility of the configuration file against the current
          tools release
        examples:
        - '1.0'
        maximum: 1
        minimum: 1
        title: Api Version
        type: number
    required:
    - api_version
    title: ToolsConfigInfo
    type: object
  ToolsRuntimeConfig:
    description: The runtime configurations of the tools as defined by the user.
    properties:
      dependencies:
        description: The list of runtime dependencies required by the tools Jar cmd.
          All elements are downloaded and added to the classPath
        items:
          "$ref": "#/$defs/RuntimeDependency"
        title: Dependencies
        type: array
    required:
    - dependencies
    title: ToolsRuntimeConfig
    type: object
description: Main container for the user's defined tools configuration
properties:
  info:
    "$ref": "#/$defs/ToolsConfigInfo"
    description: Metadata information of the tools configuration
  runtime:
    "$ref": "#/$defs/ToolsRuntimeConfig"
    description: Configuration related to the runtime environment of the tools
required:
- info
- runtime
title: ToolsConfig
type: object

detailed code changes
This pull request includes several changes to the user_tools module, focusing on improving dependency management and configuration handling. The changes include importing new modules, adding methods for handling tool configurations, and updating the way dependencies are processed and verified.
Configuration Handling Enhancements:

user_tools/src/spark_rapids_pytools/rapids/rapids_tool.py: Added a method get_tools_config_obj to retrieve the tools configuration object from CLI arguments.
user_tools/src/spark_rapids_pytools/rapids/rapids_tool.py: Added a method populate_dependency_list to check for dependencies in a config file before falling back to default dependencies.

Minor Code Improvements:

user_tools/src/spark_rapids_pytools/rapids/rapids_tool.py: Corrected a comment typo in _process_output_args method.
user_tools/src/spark_rapids_pytools/rapids/rapids_tool.py: Adjusted the formatting of the get_rapids_tools_dependencies method for better readability.
user_tools/src/spark_rapids_pytools/resources/dev/prepackage_mgr.py: Added import for CspPath and RuntimeDependency to support new dependency handling. [1] [2]

Modified the format of platform configuration to match the same structure

user_tools/src/spark_rapids_pytools/rapids/rapids_tool.py: Added imports for RuntimeDependency, ToolsConfig, and DependencyType to better manage dependencies. Updated methods to use RuntimeDependency objects instead of dictionaries. [1] [2]
user_tools/src/spark_rapids_pytools/resources/databricks_aws-configs.json: Replaced hashLib with fileHash for verification and added dependencyType for better dependency classification. [1] [2] [3]
user_tools/src/spark_rapids_pytools/resources/databricks_azure-configs.json: Similar changes to the AWS configs, updating verification and dependency type fields.
user_tools/src/spark_rapids_pytools/resources/dataproc-configs.json: Updated verification and dependency type fields for Dataproc configurations.
user_tools/src/spark_rapids_pytools/resources/dataproc_gke-configs.json: Similar updates to verification and dependency type fields for GKE configurations.

one general comment about the description is that it doesn't seem like the section "The specification of the file is as follows".. matches what the real spec is.  Or atl east its very hard to read and match them up.  was this auto generated?
For instance:
DependencyType:
    description: Represents the dependency type for the jar cmd
    enum:
    - jar
    - archive
    - classpath
    title: DependencyType
    type: string

Description is dependency type for the jar command (what is jar command here?)... but enum is jar, archive, or classpath.  It doesn't seem to match dependency_type field in the example above it.
dependency_type:
        dep_type: archive
        relative_path: jars/*

when I run with a tools config file with only the info and api version it fails with:
Traceback (most recent call last):
....
TypeError: argument 'message_template': 'ValidationError' object cannot be converted to 'PyString'

Is there a way to get a more informative error message?

one general comment about the description is that it doesn't seem like the section "The specification of the file is as follows".. matches what the real spec is. Or atl east its very hard to read and match them up. was this auto generated?
For instance:
DependencyType:
    description: Represents the dependency type for the jar cmd
    enum:
    - jar
    - archive
    - classpath
    title: DependencyType
    type: string

Description is dependency type for the jar command (what is jar command here?)... but enum is jar, archive, or classpath. It doesn't seem to match dependency_type field in the example above it.
dependency_type:
        dep_type: archive
        relative_path: jars/*

I assume some fields are optional.. like dependency_type: is only listed in your example for one of the 3 dependencies?
Also the description doesn't detail how this interacts with the default spark downloads, please add those details.

Thanks @tgravescs
I think the issue here that the autogenerated file picks both the field description and the class pydoc which causes it to be confusing.
There is some control on the autogenerated file by excluding fields, adding examples...etc. I will revisit it to pick a better explanation of the schema

Thanks @tgravescs
As we discussed offline:

I updated the description of fields
I added unit tests to have clear understanding of valid/invalid files and the expected behavior
I fixed the errors to be more clear. Specifying which fields are failing.
I put a sample specification file in the test folders to be referenced. In addition, I added github link to the valid yaml files in the output of the help cmd.

New specifications after the changes for convenience:
https://github.com/NVIDIA/spark-rapids-tools/pull/1395/files#diff-79a9ce702cf001815401a8737b8ec035c1f7ed01d73a5360f2b4f0142807be5b


CM-83 Implementar login y auth con JWT en users-be

Refer to this link for build results (access rights to CI server needed):
http://utils.brazilsouth.cloudapp.azure.com:8080/job/ci/job/continuous-integration-user/38/

test this please

Refer to this link for build results (access rights to CI server needed):
http://utils.brazilsouth.cloudapp.azure.com:8080/job/ci/job/continuous-integration-user/39/

test this please

Refer to this link for build results (access rights to CI server needed):
http://utils.brazilsouth.cloudapp.azure.com:8080/job/ci/job/continuous-integration-user/40/

test this please

Refer to this link for build results (access rights to CI server needed):
http://utils.brazilsouth.cloudapp.azure.com:8080/job/ci/job/continuous-integration-user/41/

test this please

Refer to this link for build results (access rights to CI server needed):
http://utils.brazilsouth.cloudapp.azure.com:8080/job/ci/job/continuous-integration-user/42/

Refer to this link for build results (access rights to CI server needed):
http://utils.brazilsouth.cloudapp.azure.com:8080/job/ci/job/continuous-integration-user/43/

Refer to this link for build results (access rights to CI server needed):
http://utils.brazilsouth.cloudapp.azure.com:8080/job/ci/job/continuous-integration-user/44/

Refer to this link for build results (access rights to CI server needed):
http://utils.brazilsouth.cloudapp.azure.com:8080/job/ci/job/continuous-integration-user/45/

Refer to this link for build results (access rights to CI server needed):
http://utils.brazilsouth.cloudapp.azure.com:8080/job/ci/job/continuous-integration-user/46/

Refer to this link for build results (access rights to CI server needed):
http://utils.brazilsouth.cloudapp.azure.com:8080/job/ci/job/continuous-integration-user/47/

Refer to this link for build results (access rights to CI server needed):
http://utils.brazilsouth.cloudapp.azure.com:8080/job/ci/job/continuous-integration-user/48/

@FranciscodeMaussion CR PLS

Refer to this link for build results (access rights to CI server needed):
http://utils.brazilsouth.cloudapp.azure.com:8080/job/ci/job/continuous-integration-user/49/

Refer to this link for build results (access rights to CI server needed):
http://utils.brazilsouth.cloudapp.azure.com:8080/job/ci/job/continuous-integration-user/50/

Refer to this link for build results (access rights to CI server needed):
http://utils.brazilsouth.cloudapp.azure.com:8080/job/ci/job/continuous-integration-user/51/

Refer to this link for build results (access rights to CI server needed):
http://utils.brazilsouth.cloudapp.azure.com:8080/job/ci/job/continuous-integration-user/52/


todo-mvvm-databinding: a TextView "Add a TO-DO item +" always visible despite the filter's type

todo-mvvm-databinding
In TasksViewModel I've noticed that you set the current task filtering type, and in switch cases you do tasksAddViewVisible.set(true) set to be true only for the case ALL_TASKS. But that view stays visible in ACTIVE_TASKS, and COMPLETED_TASKS.

Yep, well spotted. Thanks.


Exploration - Feature tree / Adding support for nested block selection

Context
This PR is part of a series of PR's that will be exploring tree data block support in Draft.
Adding support for nested block selection
This PR adds support for dealing with nested blocks selections and also add some tests to make sure we cover all the previous use cases when dealing with nested blocks.

Note:
This is unstable and not part of the public API and should not be used by
production systems.

Omg this is so exciting. I'd like to help in whatever way I can but also don't want to slow you guys down with any extra noise ...
sweeeeeeeeeeeeeet :+1:


[android] Enable several C++ Interop and other tests

Also, update NDK and Ubuntu versions to the latest in the Android doc, enable inline bridging when building the compiler for Android, and update the default arch set by build-script to AArch64, as that is by far the most commonly used now.
These C++ Interop tests were all disabled over the years because of build errors with the Android NDK, but @hyp's recent pull #72161 adding a modularized Bionic module map fixed them and the inline bridging issue in the compiler itself. Alex, let me know if these tests all pass for you too.
@drodriguez, perhaps you'd like to take a look at this pull too.

@swift-ci please smoke test

Sigh, File "/home/build-user/swift/test/lit.cfg", line 618, in <module>     toolchain_lib_dir = make_path(config.swift_lib_dir, 'swift', 'android' if kIsAndroid else host_os) NameError: name 'kIsAndroid' is not defined.
I had simply hacked in make_path(config.swift_lib_dir, 'swift', 'android') in my local testing and then cleaned it up with the kIsAndroid check before submitting, without checking if that variable had been defined yet.
I'll clean that up and run the validation suite natively on Android on the entirety of this pull before asking for another CI run.

Alright, fixed the lit.cfg error and ran this entire pull through the compiler validation suite natively on Android, before splitting it up into narrower commits and rebasing it here.
This is ready for review and other CI run.

@kateinoigakukun, need a CI run here.
@egorzhdan, maybe you can review.

@rauhul, need a CI run here.

@bnbarham, ready for a CI run here.

@swift-ci please test

Alright, passed CI, just need @egorzhdan or some one to review.

@etcwilde, if you would review the few remaining Android changes, we can get this in.

@bnbarham, ready for merge.

@hyp, would you merge?

Sorry, missed initial ping. Merged!


D<IP_ADDRESS> Editor for overrides of imported profiles

Under the Profile tab in the Target screen the user can override certain configuration options in the profile. This only works for profiles created by WCT. For imported profiles we will add the option to edit the raw XML, which will then be stored at the target level and completely override the profile that was originally selected for this target.

I've corrected the annotation on ProfileOverrides.java#getH3RawProfile and pushed that change into your branch. It affects how H2 creates the database (otherwise the field is VARCHAR in H2).

Closed by PR #54


Preserve blank lines

It's very helpful for readability and maintainability if intentional blank lines could be preserved. This is the only thing left that I loved so much in handlebars-formatter, it handled this case pretty well: only one blank line will be preserved and excess will be removed.
Can we support this feature as well? Thanks!

@Alonski I'm bringing this issue up again because of other people ask the same:
https://github.com/jgwhite/prettier/issues/1#issuecomment-607273019
Can we have this support? I'm willing to migrate from handlebars-formatter to this one, this is the only road-block to me.

@nightire This extension is 99% the same as handlebars-formatter. I pretty much just copied the code with a few different defaults.
Right now this extension uses Prettier 1.18.2
handlebars-formatter uses Prettier 1.19.0
There is currently inconsistent behavior in Prettier versions higher than 1.18.2.
I wrote about this here: https://github.com/jgwhite/prettier/issues/1#issuecomment-602504650
This is what is currently preventing me from bumping Prettier version to latest.
Other than this I don't think there is much I can do right now :)

@Alonski Okay, I understand it better now. Thanks for your patience.

@nightire Are you saying that if you use Prettier v1.19.0 from the command line via the Prettier CLI it preserves whitespace differently than handlebars-formatter?

@nightire Are you saying that if you use Prettier v1.19.0 from the command line via the Prettier CLI it preserves whitespace differently than handlebars-formatter?

No. It's my fault because I don't know handlebars-formatter has a bundled version of Prettier. I have thought it uses the local version copy, my bad, sorry for my misleading.


Refactor upgrade action

Summary
Related Links

Checklist

[ ] I have added changeset via pnpm run change.
[ ] I have updated the documentation.
[ ] I have added tests to cover my changes.

!canary

!canary

!canary

!canary


Error logs presentation on UI

Display the useful message to user, @jackyoh, after closing this issues, plz hand over your commit SHA

fix this issues by 6d4710a. Has been merged into 0.1.0


[Icon Request] request add more icons

PKief.material-icon-theme has many icons, but I really like Catppuccin.catppuccin-vsc-icons. So I want to be able to add more file and folder icons.
Here is a comparison of the files and folders I used:

👋 Hi i can consider adding some new icons and folder icons.
It'd be easier if you list what you think would be good additions :)

Here are some icons that I think are interesting:

prisma
proto
db
error
middleware
app
cmd/cli
auth

By the way, prisma’s icon is much smaller than others

By the way, prisma’s icon is much smaller than others

that's not how it's supposed to look with the theme 🤔
should look like this

that's not how it's supposed to look with the theme 🤔 should look like this

Try a light theme like Catppuccin Latte.

you may have something overriding it 🤔

I found it, it's affected by the Prisma.prisma extension 🤦♂

some new folder icons will be added in v1 :) (coming soon ™ )
feel free to reopen a new issue then


defaultChecked keys is not working

@yujinpan please help

Hey, the checked nodes are bound to v-model/value. Please set the model value.

yeah @yujinpan  it worked. Thanks for the help

if we v-model is an object then its not working as expeceted @yujinpan

Object types are currently not supported, you can create corresponding properties on the node to achieve this function:
const data = [
  { value: 1, obj: {} }
];
const obj = {};
const vlaue = treeFind(data, node => node.obj === obj)?.value;

const render = () => <el-select-tree vModel={value} data={data} />

function treeFind(data, callback) {}


Module 'tmh.dynamicLocale' is not available! You either misspelled the module name or forgot to load it

i have this issue with  only IE9 when the code is minified( in production) :
Module 'tmh.dynamicLocale' is not available! You either misspelled the module name or forgot to load it
i use angularjs 1.5 ,my version of    "angular-dynamic-locale": "0.1.32"
can you help me please ?

Hi, do you have a minimal setup that is able to reproduce this issue?
If you have it, would it be possible for you to create a plunker with the minified version and another with the unminified version?
If possible, also post the steps you are using to minify your code.
Without some extra information, it is not possible to know what is going on.

thank you for your quick answer , it is hard to reproduce this issue outside production platform ,
anyway i have solved the problem by changing the order of js files when they are minified by grunt :)

Based on the previous comment, this might not be an issue with this library. Closing.


intersight.exceptions.ApiTypeError: Invalid type for variable 'asset_device_claim'. Required value type is AssetDeviceClaim and passed type was AssetTarget at ['asset_device_claim']

Seems that the claim target example (9.1) has an incorrect class. It should be AssetDeviceClaim instead of AssetTarget
Suggested solution:
from intersight.api import asset_api
from intersight.model.asset_device_claim import AssetDeviceClaim
from pprint import pprint
import intersight

api_key = "api_key"
api_key_file = "~/api_key_file_path"

api_client = get_api_client(api_key, api_key_file)

api_instance = asset_api.AssetApi(api_client)

# AssetTarget | The 'asset.Target' resource to create.
asset_target = AssetDeviceClaim()

# setting claim_code and device_id
asset_target.security_token = "2Nxxx-int"
asset_target.serial_number = "WZPxxxxxFMx"

# Post the above payload to claim a target
try:
    # Create a 'asset.Target' resource.
    claim_resp = api_instance.create_asset_device_claim(asset_target)
    pprint(claim_resp)
except intersight.ApiException as e:
    print("Exception when calling AssetApi->create_asset_device_claim: %s\n" % e)

Thanks, @sfloresk for raising the issue. I have confirmed the fix and will raise a PR soon for this.

fixed via https://github.com/cisco-intersight/intersight_python_examples/pull/13


add ExclusiveGroup feature to multilib.yaml

Fixes #307
This allows a multilib configuration to specify explicitly that a subset of its
libraries are alternatives to each other, and at most one of that subset should
be selected. To be consistent with existing semantics, the last choice wins,
if more than one of the options matches the given flags.

I've added the comments to CMakeLists.txt. I'll leave the refactoring until we upstream this.


Meta summary

Coverage decreased (-0.5%) to 40.779% when pulling 7a7b3b50f0eab285b86285f57c4e6a3ea7b1c60f on sylvestre:meta-summary into 1c6cbb6e629bca0db464d973dd462333c4742185 on mozilla:master.


Delegate subdomain from operationcode.org domain to Route53

Problem
The operationcode.org hosted zone is with DNSimple, and in order to use kops to create a Kubernetes cluster it needs to have control over its DNS records.
Solution
Delegate a subdomain to Route 53 in order to provide kubernetes and kops with the ability to manage DNS records for its purposes.

@ohaiwalt, does this replace #2?

@hollomancer This is a prelude to #2 in order to get the k8s cluster up. That issue may prove unnecessary.

I have created a Route 53 hosted zone for k8s.operationcode.org, which creates NS records and an SOA record for that hosted zone. Those NS records are then also created in the operationcode.org hosted zone in DNSimple as the k8s NS record, which results in delegating responsibility for any subdomains of k8s.operationcode.org to the Route 53 hosted zone.
Here is some relevant documentation.


Scheduling simulation seems to take previous antiAffinity "topologyKey" instead of new updated one

Description
Observed Behavior:
A "debug" nodepool is configured with a taint.
A deployment is deployed to this nodepool with :

1 replica
a nodeSelector + toleration to go the a "debug" node
the default rolling update strategy (adding a new pod before deleting the old one)
an antiAffinity using the deprecated failure-domain.beta.kubernetes.io/hostname => why ? it is an actual use case where, investigating issues in karpenter nodes replacement after expiration, we found out that some of our users were still using this deprecated topologyKey in their antiaffinity config. As they are not able to fix this for now (production constraints), we are trying to find a way to unblock node replacement :

1st we tried to add the deprecated label to all our nodes : but karpenter did not add new node to schedule the new pods. We guessed it may be caused by the fact that this label is deprecated : is it ?
2nd we tried to fix the deprecated topologyKey (failure-domain.beta.kubernetes.io/hostname) by the valid one (kubernetes.io/hostname) in one deployment but here again, karpenter is not creating a new node. Hence the current issue.

Deployment :
spec:
  replicas: 1
  [...]
  template:
    spec:
      nodeSelector:
        node_group: debug
      tolerations:
      - effect: NoSchedule
        key: node_group
        operator: Equal
        value: debug
      # ----------------------- pod antiAffinity
      affinity:
        podAntiAffinity:
          requiredDuringSchedulingIgnoredDuringExecution:
          - labelSelector:
              matchExpressions:
              - key: app
                operator: In
                values:
                - foo
            namespaces:
            - foo
            topologyKey: failure-domain.beta.kubernetes.io/hostname

Karpenter is creating a node "debug" and the pod is scheduled there.
Only 1 "debug" node is existing for now.
We edit the deployment to update the topologyKey :
topologyKey: failure-domain.beta.kubernetes.io/hostname
replaced by
topologyKey: kubernetes.io/hostname
A rolling update is triggered :

a new pod is created and becomes "Pending" as it cannot be scheduled to the current debug node because of the pod antiAffinity (the current pod already being there)
karpenter does not create a new "debug" node to schedule this new pod and logs this

incompatible with nodepool \"debug\", daemonset overhead={\"cpu\":\"1121m\",\"memory\":\"1824Mi\",\"pods\":\"13\"},
unsatisfiable topology constraint for pod anti-affinity, key=failure-domain.beta.kubernetes.io/hostname
(counts = map[ip-10-10-101-122.eu-central-1.compute.internal:1],
podDomains = failure-domain.beta.kubernetes.io/hostname Exists,
nodeDomains = failure-domain.beta.kubernetes.io/hostname Exists);

It is like karpenter still takes the old label into consideration for scheduling simulation whereas we fixed it with a valid one.
The new pod stays blocked in "Pending" state and the rolling update cannot succeed...
Expected Behavior:
I would understand that karpenter do not want to create a node because of the deprecated label but, after we fixed this label, I would expect karpenter to create a new "debug" node due to the antiAffinity for the new pod to be able to be scheduled to it.
Reproduction Steps (Please include YAML):

debug-deploy.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
  name: debug
  labels:
    app: debug
spec:
  replicas: 1
  selector:
    matchLabels:
      app: debug
  template:
    metadata:
      labels:
        app: debug
    spec:
      containers:
      - name: pause-container
        image: k8s.gcr.io/pause:3.4.1
        resources:
          limits:
            cpu: '100m'
            memory: 40Mi
          requests:
            cpu: '10m'
            memory: 10Mi
      nodeSelector:
        node_group: debug
      tolerations:
      - effect: NoSchedule
        key: node_group
        operator: Equal
        value: debug
      affinity:
        podAntiAffinity:
          requiredDuringSchedulingIgnoredDuringExecution:
          - labelSelector:
              matchExpressions:
              - key: app
                operator: In
                values:
                - debug
            namespaces:
            - debug
            topologyKey: failure-domain.beta.kubernetes.io/hostname # <<< This will be commented later
            # topologyKey: kubernetes.io/hostname                              # <<< This will be uncommented later

Initial status : no "debug" node is present

Create the debug deployment

kubectl apply -f debug-deploy.yaml

Karpenter create a nodeClaim for the "debug" nodepool
Wait for a debug node to be up and the debug pod to be running on it

Try a rolling update

kubectl rollout restart deployment/debug

The new pod is in pending
Karpenter does not create a new nodeClaim for a debug node and logs this
incompatible with nodepool \"debug\", daemonset overhead={\"cpu\":\"1121m\",\"memory\":\"1824Mi\",\"pods\":\"13\"},
unsatisfiable topology constraint for pod anti-affinity, key=failure-domain.beta.kubernetes.io/hostname
(counts = map[ip-10-10-XXX-YYY.eu-central-1.compute.internal:1],
podDomains = failure-domain.beta.kubernetes.io/hostname Exists,
nodeDomains = failure-domain.beta.kubernetes.io/hostname Exists);

Undo the rollout.
kubectl rollout undo deployment/debug

Edit the deployment and replace the toplogyKey by the valid one topologyKey: kubernetes.io/hostname
(comment the deprecated one, uncomment the valid one)
This triggers a new rollout.
But the new pod stays in pending
Karpenter does not create a new nodeClaim for a debug node and logs this
NOTES :

if I create the deployment with the valid topologyKey since the beginning, all is working correctly.
if I pre-provision debug nodes, the scheduling is working correctly also

So it seems that karpenter is not taken into account the new topologyKey in its schedule simulation when we edit it after creation...?
Versions:

Chart Version: v0.33.0
Kubernetes Version (kubectl version): 1.27.14

Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request
Please do not leave "+1" or "me too" comments, they generate extra noise for issue followers and do not help prioritize the request
If you are interested in working on this issue or have submitted a pull request, please leave a comment

I couldn’t find any information about ·failure-domain.beta.kubernetes.io/hostname·, so your concern might be invalid. However, I found similar keys that have been deprecated. u might want to refer to:
https://kubernetes.io/docs/reference/labels-annotations-taints/#failure-domainbetakubernetesioregion

@Vacant2333 thanks for your help
You are right, indeed, my mistake : failure-domain.kubernetes.io/hostname has never been a registered label (it was a bad guess coming from the fact that failure-domain.kubernetes.io/zone and failure-domain.kubernetes.io/region were before their deprecation)
However, I do not understand why, when I fix it by replacing it by the valid one kubernetes.io/hostname, karpenter is still complaining and mentionning the old one in the logs...
Seems like a bug to me but I am curious to know your thoughts on this

@Vacant2333 thanks for your help You are right, indeed, my mistake : failure-domain.kubernetes.io/hostname has never been a registered label (it was a bad guess coming from the fact that failure-domain.kubernetes.io/zone and failure-domain.kubernetes.io/region were before their deprecation)
However, I do not understand why, when I fix it by replacing it by the valid one kubernetes.io/hostname, karpenter is still complaining and mentionning the old one in the logs...
Seems like a bug to me but I am curious to know your thoughts on this

hi, can u show me the logs in detail, i will try to find the resone~

@Vacant2333
Sure here are the logs from karpenter pod just after I edit the deployment to update the topologyKey to topologyKey: kubernetes.io/hostname:
karpenter-55599bc687-p6zrz controller {"level":"ERROR","time":"2024-10-25T10:12:02.692Z","logger":"controller.provisioner","message":"Could not schedule pod, incompatible with nodepool \"ci\", daemonset overhead={\"cpu\":\"1121m\",\"memory\":\"1824Mi\",\"pods\":\"13\"}, did not tolerate node_group=ci:NoSchedule; incompatible with nodepool \"debug\", daemonset overhead={\"cpu\":\"1121m\",\"memory\":\"1824Mi\",\"pods\":\"13\"}, unsatisfiable topology constraint for pod anti-affinity, key=failure-domain.beta.kubernetes.io/hostname (counts = map[ip-10-10-102-117.eu-central-1.compute.internal:1], podDomains = failure-domain.beta.kubernetes.io/hostname Exists, nodeDomains = failure-domain.beta.kubernetes.io/hostname Exists); incompatible with nodepool \"monitoring\", daemonset overhead={\"cpu\":\"1121m\",\"memory\":\"1824Mi\",\"pods\":\"13\"}, did not tolerate node_group=monitoring:NoSchedule; incompatible with nodepool \"stable\", daemonset overhead={\"cpu\":\"1121m\",\"memory\":\"1824Mi\",\"pods\":\"13\"}, did not tolerate node_group=stable:NoSchedule; incompatible with nodepool \"standard\", daemonset overhead={\"cpu\":\"1121m\",\"memory\":\"1824Mi\",\"pods\":\"13\"}, incompatible requirements, key node_group, node_group In [debug] not in node_group In [standard]","commit":"2dd7fdc","pod":"debug/debug-5b444b6f5-578wb"}

the relevant part being the one from my first message :
incompatible with nodepool \"debug\", daemonset overhead={\"cpu\":\"1121m\",\"memory\":\"1824Mi\",\"pods\":\"13\"}, unsatisfiable topology constraint for pod anti-affinity, key=failure-domain.beta.kubernetes.io/hostname (counts = map[ip-10-10-102-117.eu-central-1.compute.internal:1], podDomains = failure-domain.beta.kubernetes.io/hostname Exists, nodeDomains = failure-domain.beta.kubernetes.io/hostname Exists);

and the Events from the "Pending" pod are :

Why karpenter still mentions the previous topologyKey instead of the new one...?

Did you find out what the reason is? It’s strange because Karpenter uses the latest pod information for each simulation scheduling. Has the old pod been completely deleted? i cant find the resaon on my enviorment cause cant reproduce

@Vacant2333  no we still have the issue and did not find the reason.
We have the issue right now :

all the deployments with the wrong topologyKey were fixed on the cluster
we edited the nodepools to update the AMI ID (upgrade k8s from 1.27 to 1.28)
karpenter starts rolling the nodes
some nodes were rolled successfully
some nodes are blocked because of the same error

not all pods would schedule, <NS>/<POD_ID> =>
incompatible with nodepool "standard", daemonset overhead={"cpu":"1121m","memory":"1824Mi","pods":"13"},
unsatisfiable topology constraint for pod anti-affinity,
key=failure-domain.beta.kubernetes.io/hostname (counts = map[ip-10-10-XXX-YYY.eu-central-1.compute.internal:1],
podDomains = failure-domain.beta.kubernetes.io/hostname Exists,
nodeDomains = failure-domain.beta.kubernetes.io/hostname Exists);

and if I look to the corresponding deployment, the topologyKey is the right one (kubernetes.io/hostname}, the only place where I can find the failure-domain.beta.kubernetes.io/hostname mentionned in karpenter logs is the kubectl.kubernetes.io/last-applied-configuration annotation
apiVersion: apps/v1
kind: Deployment
metadata:
  annotations:
    kubectl.kubernetes.io/last-applied-configuration: |
      {"apiVersion":"apps/v1","kind":"Deployment",
      "metadata":{...}
      "spec":{...
         "affinity":{"podAntiAffinity":{"requiredDuringSchedulingIgnoredDuringExecution":[{"labelSelector":{"matchExpressions":[{"key":"name","operator":"In","values":["configmanager"]}]},"namespaces":["<NS>"],"topologyKey":"failure-domain.beta.kubernetes.io/hostname"}]}},
      {...}
    mutated-by-kyverno-policy: mutate-deprecated-topologykey
  name: configmanager
  namespace: <NS>
spec:
  replicas: 1
  selector:
    matchLabels:
      app: configmanager
  template:
    metadata:
      labels:
        app: configmanager
        name: configmanager
    spec:
      affinity:
        podAntiAffinity:
          requiredDuringSchedulingIgnoredDuringExecution:
          - labelSelector:
              matchExpressions:
              - key: name
                operator: In
                values:
                - configmanager
            namespaces:
            - keycore-debug-1
            topologyKey: kubernetes.io/hostname
[...]

Additionnal information : on the node that karpenter does not manage to consolidate, if I do a "kubectl drain" (without force), the node is correctly drained

UPDATE : in fact it was not due to the lastAppliedConfiguration at all...😅
After some more digging, we found out that the issue came from some deployments that were in a weird state :
1 deployment with 2 replicas pods, but with 2 different replicasets !!
The most recent replicaset contained the fix on the topologyKey so the corresponding pod did not block the rolling, but the second pod was attached to an old replicaset that contained the "wrong" topologyKey, and the rolling was blocked because of this second pod.
We do not understand how this is possible...
After removing the "wrong" pods and the corresponding replicasets, all is ok now.


Can't create object cluster

Issue
create object cluster with the following payload :
{
	"label": "ob",
	"servers": 2,
	"driveType": "hdd",
	"metaDriveType": "ssd",
	"nodes": [
		"0cc47a740646",
		"0cc47a740632"
	],
	"clusterType": "object",
	"dataShards": 1,
	"parityShards": 1
}

it results the following error :
  File "/usr/lib/python3.5/concurrent/futures/thread.py", line 55, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/tmp/actions/storage_cluster/08e87e33f06b628e614ff865f396866f.py", line 288, in init
    metadisk = metadisks[nodename][idx]
IndexError: list index out of range
[Mon18 08:03] - ays_api.py          :519 :j.atyourservice.server         - ERROR    - Error during execution of the blueprint:
 list index out of range
Traceback (most recent call last):
  File "/opt/code/github/jumpscale/ays9/JumpScale9AYS/ays/server/ays_api.py", line 505, in executeBlueprint
    message=message)
  File "/opt/code/github/jumpscale/ays9/JumpScale9AYS/ays/lib/AtYourServiceRepo.py", line 495, in blueprintExecute
    msg = await bp.load(role=role, instance=instance, context=context)
  File "/opt/code/github/jumpscale/ays9/JumpScale9AYS/ays/lib/Blueprint.py", line 154, in load
    await actor.asyncServiceCreate(instance=bpinstance, args=args, context=context)
  File "/opt/code/github/jumpscale/ays9/JumpScale9AYS/ays/lib/Actor.py", line 518, in asyncServiceCreate
    service = await Service.init_from_actor(aysrepo=self.aysrepo, actor=self, name=instance, args=args, context=context)
  File "/opt/code/github/jumpscale/ays9/JumpScale9AYS/ays/lib/Service.py", line 34, in init_from_actor
    raise e
  File "/opt/code/github/jumpscale/ays9/JumpScale9AYS/ays/lib/Service.py", line 26, in init_from_actor
    await self._initFromActor(actor=actor, args=args, name=name, context=context)
  File "/opt/code/github/jumpscale/ays9/JumpScale9AYS/ays/lib/Service.py", line 143, in _initFromActor
    await self.init(context=context)
  File "/opt/code/github/jumpscale/ays9/JumpScale9AYS/ays/lib/Service.py", line 673, in init
    await job.executeInProcess()
  File "uvloop/future.pyx", line 241, in __await__ (uvloop/loop.c:110786)
  File "uvloop/future.pyx", line 432, in uvloop.loop.BaseTask._fast_wakeup (uvloop/loop.c:113980)
  File "uvloop/future.pyx", line 101, in uvloop.loop.BaseFuture._result_impl (uvloop/loop.c:108900)
  File "/usr/lib/python3.5/concurrent/futures/thread.py", line 55, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/tmp/actions/storage_cluster/08e87e33f06b628e614ff865f396866f.py", line 288, in init
    metadisk = metadisks[nodename][idx]
IndexError: list index out of range

Software Version
1.1.0-alpha-8 on 7efbde19b12fbf2e1ba8c2cf43e67ce03231b223

Fixed in https://github.com/zero-os/0-orchestrator/commit/95169a2f3e3711b6daa39ec14a8a510eb4656e29

Software version
95169a2f3e3711b6daa39ec14a8a510eb4656e29


Typo in README

And só in somefile.js you can do this:
I think só is meant to be so.

Fixed in #3 Thanks @Silex

:+1:


feat: add api gen cmd

1. Does this PR affect any open issues?(Y/N) and add issue references (e.g. "fix #123", "re #123".):

[x] N
[ ] Y

feat: add api gen cmd

2. What is the scope of this PR (e.g. component or file name):

3. Provide a description of the PR(e.g. more details, effects, motivations or doc link):

[ ] Affects user behaviors
[ ] Contains syntax changes
[ ] Contains variable changes
[ ] Contains experimental features
[ ] Performance regression: Consumes more CPU
[ ] Performance regression: Consumes more Memory
[ ] Other

4. Are there any breaking changes?(Y/N) and describe the breaking changes(e.g. more details, motivations or doc link):

[ ] N
[ ] Y

5. Are there test cases for these changes?(Y/N) select and add more details, references or doc links:

[ ] Unit test
[ ] Integration test
[ ] Benchmark (add benchmark stats below)
[ ] Manual test (add detailed scripts or steps below)
[ ] Other

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 63.016%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
2687

Relevant Lines:
4264

💛  - Coveralls


Public API for instrumenting the compilation cache

Currently, the jax.compilation_cache offers only a minimal interface (basically just enable/disable it).
It would be useful to be able to interact with the cache in more ways. For example, if we wanted to load-share/paralellize the compilation by having multiple processes produce cache entries ahead of some expensive run, we'd need functionality like the following. Let a = jax.jit(f).lower(a, b, c):

Ask whether a.compile() would hit the cache (e.g. to assert that it does, and hence that the precompilation system is working correctly).
Ask for a's cache key.
Print a human-readable representation of the ingredients of the cache key (for debugging -- this contains, for example, the compilation options).

Currently this information can be extracted via jax._src, but not in a stable or supported way, and it would be good to have a stable, public API for this.
Thank you!

Hi @tkoeppe,
I'm interested in contributing to this issue and I think I understand the initial requirements. If I understand correctly, you're looking for additional functionality in the jax.compilation_cache API to enable the precompilation of cache entries by multiple processes.
I would like to ask for more information on how I can help with implementing these enhancements, such as directing me with source information on how this cache system currently works and what specific functionality is needed to achieve the desired outcome.
And for the API part, What would be the best approach to design and implement the public API you are envisioning? Are there any specific requirements or constraints that I should keep in mind?
Thank you for your time and guidance.

Hello, @aadhamm, thanks a lot! I'm also just a user of Jax and don't know what the best place in the API is. I was hoping that @hawkinsp or @yashk2810 could weigh in.
Personally, I think it'd be nice to have this information exposed on the result of x = jax.jit(f).lower(a, b, c): i.e. one could say x.is_cached(), x.compilation_cache_key(), etc. But I'm not sure where this would be best exposed; I'd defer to someone more experienced with Jax's API design.
It would also be good if we could query the information that goes into the compilation cache (e.g. the compilation options), so that in the case where we expect a cache hit but don't get one, we can drill down into the differences.


Add new components

Page or Section header that includes actions

https://tailwindui.com/components/application-ui/headings/page-headings
https://tailwindui.com/components/application-ui/headings/section-headings

Panel that includes header (no footer)

https://tailwindui.com/components/application-ui/layout/panels#component-5a45d30370f33848da982e8b0879e0a3
https://tailwindui.com/components/application-ui/headings/card-headings#component-9a0cf79b18a892dfed706f00447128e3

Completed!

Add forms: https://tailwindui.com/components/application-ui/forms/form-layouts

Added form components!


[BUG] Vector2Refrence inspector doesn't work

Vector2Refrence inspector doesn't work

Environment

OS: Windows 11
Unity Version 2022.3.0 / Android
Version of Unity Atoms 4.4.5

duplicate of #353
duplicate of #367
fixed on canary with #359 - waiting for 4.4.6 release


the default mds-register=true requires workarounds for none network

Currently when --net=none is given it gets translated to --net=default-restricted. This decision was made to guarantee the connection to the MDS, especially because --mds-register=true is the default.
The implicit selection of the default-restricted network is a hidden security risk, since we currently have no netfilter support for DENY or DROP rules which leads to the host's network services to be exposed towards the container.
My suggestion is that we

change the default to  --mds-register=false
make --net=none really no networking
require  ~--net=(default|default-restricted) for --mds-register=true, and error out if it's not fulfilled

Also: rename --net to --network

@vcaputo what's wrong with --net?

@steveeJ inconsistent, we use --volume, not --vol.

@vcaputo Personally, I'd rather rename --volume to --vol ;-) Would you please file a separate issue for the flag rename, it doesn't quite fit in this one.

Can we just alias both these cases?
On Sat, Oct 17, 2015 at 12:43 AM, Stefan Junker<EMAIL_ADDRESS>wrote:

@vcaputo https://github.com/vcaputo Personally, I'd rather rename
--volume to --vol ;-) Would you please file a separate issue for the flag
rename, it doesn't quite fit in this one.
—
Reply to this email directly or view it on GitHub
https://github.com/coreos/rkt/issues/1574#issuecomment-148893438.

+1 on the original proposal

+1 on OP


Enhanced discord webhook.

Makes the discord purtier.

eguts is way better. refactoring mine off his base.


Killing the parent "yarn start" process leaves the sub-sub-process that actually listens to port 3000 still running

Describe the bug
Programmatically trying to kill the "yarn start" process only kills some of the relevant processes.  In particular, the node sub-process that listens to port 3000 is left running, which in turn causes trouble on the next "yarn start" attempt.
Did you try recovering your dependencies?

Bug happens when running "yarn start" from fresh "npx create-react-app", so this should not be relevant.
Which terms did you search for in User Guide?

Tried searching for "stop", to see if there was some documented way of stopping the thing you start with "yarn start", but found nothing.
Environment

Environment Info:
current version of create-react-app: 4.0.3
running from /Users/hmeland/.npm/_npx/c67e74de0542c87c/node_modules/create-react-app
System:
OS: macOS 10.15.7
CPU: (16) x64 Intel(R) Core(TM) i9-9880H CPU @ 2.30GHz
Binaries:
Node: 16.6.0 - /usr/local/bin/node
Yarn: 1.22.10 - /usr/local/bin/yarn
npm: 7.19.1 - /usr/local/bin/npm
Browsers:
Chrome: 92.0.4515.107
Edge: Not Found
Firefox: Not Found
Safari: 14.1.2
npmPackages:
react: ^17.0.2 => 17.0.2
react-dom: ^17.0.2 => 17.0.2
react-scripts: 4.0.3 => 4.0.3
npmGlobalPackages:
create-react-app: Not Found
Steps to reproduce

To reproduce (I'm on OSX, don't know whether other OSes are also affected):
$ npx create-react-app repro
$ cd repro/
$ yarn
$ yarn start &
[1] 94708
  # Now, wait for browser page to open and start working...

$ pstree 94708
-+= 94708 hmeland node /usr/local/Cellar/yarn/1.22.10/libexec/bin/yarn.js start
 \-+- 94730 hmeland /usr/local/Cellar/node/16.6.0/bin/node /private/tmp/repro/node_modules/.bin/react-scripts start
   \--- 94731 hmeland /usr/local/Cellar/node/16.6.0/bin/node /private/tmp/repro/node_modules/react-scripts/scripts/start.js

$ sudo lsof -i :3000 | grep LISTEN
node    94731 hmeland   27u  IPv4 0xe4aa337aee33c393      0t0  TCP *:hbci (LISTEN)
  # Note that the process listening to port 3000 (pid 94708)
  # is not the master "yarn start" process (pid 94731)

  # If we had run "yarn start" in the foreground, and quit it with
  # Control-C, that ends up killing both all of the relevant processes.
  # However, I'm trying to script starting/stopping the development
  # web server in concert with my backend service, so naively I only
  # have the master "yarn start" process to work with (unless I want
  # to put my hands into a hornets' nest of OS-specific
  # workarounds).

$ kill 94708
[1]+  Terminated: 15          yarn start
$ pstree 94708
  # No output, as the parent process has been killed
  # ... but the listening node subprocess is still running:
$ sudo lsof -i :3000 | grep LISTEN
node    94731 hmeland   27u  IPv4 0xe4aa337af94349b3      0t0  TCP *:hbci (LISTEN)

Expected behavior

Killing the parent process should also cause the listening sub-process to get killed.
Actual behavior

(Write what happened. Please add screenshots!)
Reproducible demo

(Paste the link to an example project and exact instructions to reproduce the issue.)

I have a fix for this, but I'm not sure if it will work for everyone. Maybe you can try it out?
Open up node_modules/react-scripts/scripts/start.js and add this line before any process.on is called (line 18 on the current main branch works).
process.stdin.resume()

This fixed the issue for me, and I've tried to describe it more in my issue here.

@razwanizmi adding process.stdin.resume(); before line 18 didn't help me unfortunately (Windows 11, Node 14)

@razwanizmi I have tried your suggested fix (Sorry for the slow response), but it does not fix my issue.
If I try reproducing my issue as originally described, I end up with a parent process that gets "stopped" because it is unable to read from stdin, but I think that is more an artifact of my attempted shell reproduction of the issue than the issue itself.
By modifying my reproduction steps to do "yarn start < /dev/null &" instead of just "yarn start &", I still see the same parent-process-gets-killed-but-sub-sub-process-which-is-actually-listening-to-port-3000-sticks-around behaviour that I originally described.


Request body property

Add body property of type ReadableStream to request object.

I have read the CLA Document and I hereby sign the CLA


Improve in Book Image Size

In this the Book image is not fit properly to container and not cover it look like this.
Before

After Change it look like this

Sure @Sujal942 and can you do this for the remaining pages ?

ok Sure but 2,3,4 pages also need to be improve specially 4 page all the items are not align properly.

Someone messed the code up will fix it soon, reviewer didn't reveied the code properly.

Hii @Sujal942  @Ctoic
I would like you to assign me this issue under hactoberfest 2024.
looking forward to do it.

Heyy @Ctoic can you please assign me this issue?

This issue is also done @dakshh-bhardwaj

@Ctoic book image is not display properly.


Searchbar

Can u tell me about codacy.. why am i getting this error?

It's a code scan error.


Added a rich presence that shows when you have the script running

Thanks for making this edit but I can't add this because I don't feel the need and it could cause problems for computers without discord.


Loading LBA dataset.

I'd like to load the LBA dataset and get the following:

Amino acid sequences
SMILES strings for the molecules
Binding affinity values

I downloaded the LBA dataset and loaded it in python with:
# Load dataset from directory of PDB files
dataset = da.load_dataset("ligand_binding_affinity", 'pdb')

But how can I get the amino acid sequences, SMILES strings, and binding affinity from this?
Thanks for your time.

Currently, the HDF version of the LBA dataset doesn't contain the AA seq and SMILES data. We are going to release an updated version of the dataset that includes those information pretty soon!

Currently, the HDF version of the LBA dataset doesn't contain the AA seq and SMILES data. We are going to release an updated version of the dataset that includes those information pretty soon!

Hi Patricia, any updates to this issue? Thanks

Hi Patricia, any updates to this issue? Thanks

@ZackS13 Sorry for the delay. The updated LBA dataset has now been released. Now the dataset also contains the SMILES of the ligand and the AA seq of the protein. The dataset is in LMDB format. The instructions on how to load the dataset and what keys each item contains are included in the README. The ones relevant to you are probably the smiles and seq.


audio_gstplayer AttributeError: 'NoneType' object has no attribute 'stop'

Hello
I'm trying create a music player that create a mp3 file from a binary file with a base 64 code and play the mp3, but after a while I receive the following error: AttributeError: 'NoneType' object has no attribute 'stop' in kivy\core\audio\audio_gstplayer.py".
I don't call any stop method of the the object SoundLoader in my code and I'm putting Try on each call of the object SoundLoader and anyway I get this Traceback. Can you help me?

Python: 3.4.3
OS: Windows 8
Kivy: 1.9.2
Kivy installation method: wheel installation

Code: https://gist.github.com/taisreis/674d90ab3566cb1b5d63616e4810b036
Log: https://gist.github.com/taisreis/1f4dabed8d27d7f980bb8ece33d3fc8e
File .dat: https://gist.github.com/taisreis/1a46407af10f10bf2cc6efcc36abfbb1

The problem is that your code calls stop before it's actually playing. But it's also a here bug https://github.com/kivy/kivy/blob/master/kivy/core/audio/audio_gstplayer.py#L72, because it should check if self.player is not None.

Hi @matham
Why the error occurs after a while and not when it starts?
I change the code to check if self.player is not None and kivy change the sound provider to SDL2. I need that sound provider be gstplayer because of the file mp3 and same changing the variable KIVY_AUDIO to gstplayer it still loading the SDL2.

If it changes the provider to when you edit the file, it means there's a syntax error in the file after you edit it. Make sure it is correct.

Hi @matham
I changed the code again and kivy came back load the gstplayer. It seems that was the tabs that I put instead of spaces.
I put the application to run again and it doesn't gives more the error. Thank you


Doesn't compile on non-AVR architectures

RadiationWatch.cpp doesn't run on non-AVR architectures like the ARM SAMD M0 (Arduino Zero) for a couple reasons:

The calls to dtostrf() produce compiler errors.  The fix for this is straightforward.  In RadiationWatch.cpp, just after the line #include "RadiationWatch.h" add the following:
#ifndef ARDUINO_ARCH_AVR
#include <avr/dtostrf.h>
#endif

You'll also need to edit the dtostrf.c library file, as jsmith describes in this thread: http://forum.arduino.cc/index.php?topic=368720.0

The two instances of function calls like this:
pinMode(PinNumber, INPUT);
digitalWrite(PinNumber, HIGH);
need to be changed to:
pinMode(PinNumber, INPUT_PULLUP);
This change is backwards compatible (at least with Ardunio IDE 1.6.5 and later) and so this code works fine on AVR-based systems too.

Hello Tom,
Thanks for the complete report! I'll make the changes at the end of the week, as soon as I have an Arduino at hand.

Hey I did what you've suggested: can you tell me if it works?

Sorry for the delay; I've been away.  Things are not working correctly yet, but I don't know if the problem is in your RadiationWatch code or something I don't understand about the Adafruit Feather Cortex M0 processor board and/or how the Pocket Geiger interfaces to this board.  The best I can tell is that interrupts are not being processed correctly, but I need to spend more time debugging to figure out what's wrong.  I did discover a couple of things:

The initialization for the RadiationWatch class is RadiationWatch(sigPin, nsPin, irqSigPin, irqNsPin) but these last two arguments are unnecessary since the Arduino library contains a macro, digitalPinToInterrupt(), that can be used to determine the interrupt number.  See https://www.arduino.cc/en/Reference/AttachInterrupt.  You could easily define another derived class that only required two arguments and then used digitalPinToInterrupt() to set _signIrq and _noiseIrg in RadiationWatch.cpp.  This would be backwards compatible with the current code.

It appears that with the Type 5 Pocket Geiger that NS is normally low and SIG is normally high, but in RadiationWatch.cpp it sets both interrupt handlers to be called on the RISING edge of these signals.  I haven't decided if this is correct or not, and it may be related to the problems I'm experiencing.

No problem, thanks for the report!

You pointed to the right way to do it, I'll make the change this week-end.

We may change to detect RISING edge from NS and FALLING edge from SIG. However if it can change the delay at which the current level variations are detected, it shouldn't - I think - change the change the number of variations detected and thus the results over time.

The uSv/h processing does indeed depend on the time ellapsed, as it is an unit over time. If you had more time, you have a different result. radiationWatch.loop() doesn't rely on an implicit delay in the main loop: it uses the millis() function to determine the time ellapsed between each call. However it is important to not miss radiation evente between each radiationWatch.loop() call: as byte volatile radiationCount can count up to 255 events before overflowing to 0 it is unlikely to happened if the procedure is called frequently in the main loop of your program (if it does happened, you better move to another place to consider the issue! ahah).

When you execute this example does the interrupt routines are triggered? (if so it must print messages to the Serial port in presence of noise or radiation events)

I fixed my problem with interrupts not working by simply upgrading from Arduino IDE 1.6.8 to 1.6.9 and then updating the relevant M0 board support libraries.  Obviously the support for the Cortex M0 processor is still evolving and bugs are still getting worked out.  But interrupts are working now and I'm getting better results with my Pocket Geiger board.
It would be nice if there was a value accessible via the RadiationWatch class that provided "instantaneous" gamma ray counts instead of the averaged cpm over the last 20 minutes like cpm() provides.  In other words, the current value of radiationCount.  This value is buried in the csvStatus() text but not otherwise directly accessible.  Of course most of the time it will be zero, but if have a gamma ray source available for testing (like me) then it's possible for the counts to change dramatically over a short period and it would be nice to know the values.

For no particular reason, except to preserve the scarce SRAM space of Arduino Uno. We can use an unsigned int: actually I have not tested with a radiation source and it may overflow with a byte.
I'll make these changes as soon as I have an Arduino at reach. It will be nice to know how it behaves with a source!

@tferrin The changes have been made! Tell me if that's good for you and if there are other things.
Thanks! :)

Tested and all works great!  Thank you for updating an already outstanding library.  Let's mark this issue resolved.
With respect to int vs byte for radiationCount, I think this was a good change to make.  I tested my Pocket Geiger board with a 1 uCurie Ba-133 source and got ~165 cps (10,000 cpm).  Of course this is an unusually high count for any real-world environment other than for testing purposes, and additionally calling radiationWatch.loop() every 1s or longer would mean either a very slow processor or lots of intervening code-processing taking place, but 165 is nevertheless near the 256 overflow count for a byte.  Changing to an int alleviates this potential problem altogether.
And a bit off-topic, but something I wanted to mention for those in countries that restrict access to samples of radioactive sources: the tungsten electrodes used in MIG (metal inert gas) welding often contains either 1% or 2% thorium, a naturally occurring radioactive element. Although primarily an alpha emitter, thorium daughter decay products do include gamma emitters and thus can provide a radiation source for testing Pocket Geiger boards.  My 2% thoriated tungsten electrode produces ~130 counts per minute when held in contact with the PG sensor.

Oh, thanks for the note! I'll try this soon. In France there is such an heavy process to get any radioactive source.

"In France there is such an heavy process to get any radioactive source."
Ah, France, a country that derives 75% of its electricity from nuclear energy and where, many years ago now, my wife and I were driving through the countryside one morning and happened upon a large nuclear power plant. So we "dropped in" and were given an 1.5 hour-long highly informative personal tour through many parts of the plant by a very friendly and knowledgable engineer, who answered every question I asked.  And afterwards we enjoyed an absolutely marvelous multi-course lunch at a tiny restaurant in the countryside nearby, that included as much delicious wine as we possibly could drink. Oh if I could only experience that all over again today.

Ok, I've gone to my local welding supply store, and they don't sell anymore thoriated tungsten electrode, due to health hazard for the operators (ingestion of particules during sharpening of the electrode). The seller said it was prohibed as a welding material, but I haven't found anything supporting that claim: surely it is just not sold anymore by the distributors.
For French people see:

http://www.afim.asso.fr/sst/maladies/53.pdf
http://www.airliquidewelding.com/fr/rss/electrodes-tungstenes-au-thorium.html

Anyway, there is internet.

With the 2% thoriated electrodes under the PG sensor, which still have its beta-shield. It does emmit some gamma rays! :)


Fix getStudentList query

Hey Denny, I have refactored this into a typescript package using a product called TSdx.
Could you pull down the changes, (this will essentially overwrite the previous package), and then make the changes in /src/index.ts?


Offchain local storage

I did extract/clean a part of an experimental branch for offchain local db as defined at https://github.com/paritytech/substrate/blob/d81e3abb6c62fad079a8a8127d595d2772ec7a98/primitives/core/src/offchain/mod.rs#L74 .
This is jut a draft PR as part of it are unclean and undertested (especially code from the two dependency that I put in a different branch).
Primary purpose for this draft PR is to have feedback and raise a few questions.
Open question
Concurrency
Offchain indexing api is always using the latest state of a fork branch and can always write its content without concerns (single thread for a tip of fork change).
Questions arise when modifying storage at state that are not the latest of a fork.
This PR use a trait https://github.com/cheme/substrate/blob/5b5d869416e5ac26789a893ce529d5f3d2ec4a41/utils/historied-db/src/historied/mod.rs#L123 of historied db that fails when you try to write a value that was changed at a later block or at the current block. See https://github.com/cheme/substrate/blob/19b7da7a44e8fa053b13177ef04cd9c682f27043/client/db/src/lib.rs#L2898 tests to get a rough idea of it ('at_new' is used when using indexing because we got no concurrency concerns, while 'at' is used for any update at a random block state).
So the idea is that offchain users can still attempt to insert at a past block position but only if no writes were done at a later state.
This assumes that state consistency is only required for a single key (we do not guaranty consistency if a key value is depending on other key values (the current api seems to suggest that approach)).
This is rather questionable (on could argue that no value written cannot be replaced).
Thinking twice, code could be rewrite to allow overwriting value at any position (offchain dev would be responsible for breaking consistency).
I am not sure if this would really be interesting.
So all these design choice goes into the direction of offchain code doing conditional execution depending on state.
Edit: my implementation of the conditional set is broken, it requires more state information and actually requires to synch modification (a block could be added modifying global state). It actually can work as design without branches.
So I will replace it by the unsafe api that sets anywhere in the state api.
relevance
is it still needed (I did work on this a long time ago and refresh old work to test something else, then find it a good use case to experiment)?
Technical details
History storage
Storage of value history is needed to be able to revert on fork.
This PR uses historied-db code that simple store history of change for each key values (code put in a different
branch as it is not clean and contains many unused things).
This history is indexed by a sequential state (usize, usize) with the first being the branch index and the second
the block number.
Managing branch indexes is done through TreeManagement https://github.com/cheme/substrate/blob/19b7da7a44e8fa053b13177ef04cd9c682f27043/client/db/src/lib.rs#L1175.
The main purpose of this storage is to have ok query performance for the latest block (and bad perf for the oldest ones).
Actually things are not as nice (especially the number of branch can put the latest block a bit backward in history).
There is also much possible improvement (indexing of late value for instance, especially if opening an rpc on these state).
This could also be simpley achieved by replacing the (usize, usize) indexing by the block hash and use a parity-trie code instead, it just seems a bit overkill (and the conditional concurrency check would be difficult).
Radix tree
A radix tree crate is linked, and is only here for a small technical details: the indexing mapping of block to internal index for historied-db does need iterating on key value for garbage collection.
Therefore the collection use by its db needs to be allowing iteration: works fine for rocksdb, not possible for parity-db, so I put a radix tree layer content indexing over parity-db just to manage this iteration.
This was quickly implemented recently and not really tested (the CustomDb use it so it may work for some test case).
Probably safer to use rocksdb at this point.
Unimplemented

Pruning and garbage collection: this approach does not scale and requires pruning of state.
Garbage collection (actually part of it is unimplemented and I remove as much as possible from the PR): to clean
up history and also to reindex block (the canonical query path could be simplified to a single block number treshold as soon as we know all indexed value are only containing canonical content). This should be done every N finalized block and requires tracking changed values for these block.
For archive node this means that old block will be hard to query (need to go backward all change history, currently data is split in the db, but there is no indexing for old values).

could try storing only value delta on change (that is something that does not seems difficult with the current design (would be with merkle tries)).

more testing: offchain storage (the larger base code was mostly tested on historied state or historied cache implementation but not really on offchain).

closing for a lack of progress.

Yeah, I'm working on the backend code for a different problematic (pure key value state, here there is both the history and that miltithreading to handle), will update and open anew when the other branch code get well tested.


[BUG] venice-admin-tool doesn't parse map arguments correctly

Willingness to contribute
No. I cannot contribute a bug fix at this time.
Venice version
All versions
System information
-- all platforms, this is a code bug --
Describe the problem
The Problem
In venice-admin-tool some commands are meant to take json maps as arguments.  Primary examples of this include using the --update-store command to set a custom partitioner or setting store views.  Unfortunately, right now the tool doesn't parse these well from command line (and it was heretofore undetected because java tests which invoke the api directly don't have this problem).
Example Input
java -jar venice-admin-tool-all.jar --update-store --url http://venice-controller:1576 --cluster venice-cluster --store TestGpuJobsDataStoreV1 --storage-view-configs '{"changeCaptureView": {"viewClassName": "com.linkedin.venice.views.ChangeCaptureView","params": {}}}'
Tracking information
No response
Code to reproduce bug
zpolicze@zpolicze-mn2 libs % java -jar venice-admin-tool-all.jar --update-store --url http://ltx1-app6326.stg.linkedin.com:1576 --cluster mt-0 --store TestGpuJobsDataStoreV1 -storage-view-configs '{"changeCaptureView": {"viewClassName": "com.linkedin.venice.views.ChangeCaptureView","params": {}}}'
[WARN] Running admin tool without SSL.
{
  "error" : "storage-view-configs must be key value pairs separated by comma, but value: {\"changeCaptureView\": {\"viewClassName\": \"com.linkedin.venice.views.ChangeCaptureView\",\"params\": {}}}"
}
Exception in thread "main" com.linkedin.venice.exceptions.VeniceException: storage-view-configs must be key value pairs separated by comma, but value: {"changeCaptureView": {"viewClassName": "com.linkedin.venice.views.ChangeCaptureView","params": {}}}
	at com.linkedin.venice.utils.Utils.parseCommaSeparatedStringMapFromString(Utils.java:325)
	at com.linkedin.venice.AdminTool.lambda$stringMapParam$7(AdminTool.java:992)
	at com.linkedin.venice.AdminTool.genericParam(AdminTool.java:1010)
	at com.linkedin.venice.AdminTool.stringMapParam(AdminTool.java:992)
	at com.linkedin.venice.AdminTool.getUpdateStoreQueryParams(AdminTool.java:1090)
	at com.linkedin.venice.AdminTool.updateStore(AdminTool.java:1015)
	at com.linkedin.venice.AdminTool.main(AdminTool.java:318)

What component(s) does this bug affect?

[ ] Controller: This is the control-plane for Venice. Used to create/update/query stores and their metadata.
[ ] Router: This is the stateless query-routing layer for serving read requests.
[ ] Server: This is the component that persists all the store data.
[ ] VenicePushJob: This is the component that pushes derived data from Hadoop to Venice backend.
[ ] VenicePulsarSink: This is a Sink connector for Apache Pulsar that pushes data from Pulsar into Venice.
[ ] Thin Client: This is a stateless client users use to query Venice Router for reading store data.
[ ] Fast Client: This is a stateful client users use to query Venice Server for reading store data.
[ ] Da Vinci Client: This is an embedded, stateful client that materializes store data locally.
[ ] Alpini: This is the framework that fast-client and routers use to route requests to the storage nodes that have the data.
[ ] Samza: This is the library users use to make nearline updates to store data.
[X] Admin Tool: This is the stand-alone client used for ad-hoc operations on Venice.
[ ] Scripts: These are the various ops scripts in the repo.

This is a great first time contributor bug for those interested!


Validate full file path in the static file handler

Hopefully prevent directory traversal attacks; as discussed in issue #380.

The code looks good on first glance but I cannot accept it without tests.
Please push test code after functional tests for static file handling (https://github.com/KeepSafe/aiohttp/blob/master/tests/test_web_functional.py#L263-347)

It turns out that requiring tests is a great policy, because my first patch had an embarassing error in it: filename was used instead of filepath in one critical place, thus making StaticRoute forbid all filenames, except for those that are absolute paths...
Interestingly enough, the current static file tests would not have caught that error, because as it turns out they all use absolute paths in the request URLs -- for example, on this line filename is set to the absolute path, and then over here url is set to "/static/" plus that absolute path.
I think that was not intended, so I changed those test and made them use short paths in the URLs (the tests still pass).

I think that was not intended, so I changed those test and made them use short paths in the URLs (the tests still pass).

Agree.

Like this?

Perfect! But you forgot to add unttest for that...

I'm not really sure where to put it though. Is this OK?

Yes

Thanks!


Display label in center of Circle permanently

I want to display an label always in center of circle. This is my code, but no label is being displayed, only circle.

var marker = L.circle([d.lat, d.long], radius,{color: "red", weight: 0,fillOpacity: opacity,fillColor:"red"}).bindLabel("label", { noHide: true }).addTo(map);
map.addLayer(marker);

I have included scripts like this:
<script src="http://cdn.leafletjs.com/leaflet-0.7.2/leaflet.js"></script>
<script type="text/javascript" src="js/leaflet.label.js"></script>

You need to include tooltip js first.
<script type="text/javascript" src="/path/to/leaflet-tooltip-layout.js"></script>
And if you want this to be always centered. You should add 'direction: center' to attirbutes. Like this:
circle.bindTooltip('label', {permanent: true, className: "durak_label",direction: 'center', offset: [0, 0] });
Check out here.
https://github.com/ZijingPeng/leaflet-tooltip-layout