Microsoft.Ui.Composition parity with Windows.Ui.Composition (or interop)

Describe the bug
Microsoft.Ui.ICompositorInterop is missing the methods for connecting to a DXGI Swap Chain. Since, the equivalent functionality now exists at the XAML layer (SwapChain and MediaPlayerElement) is it possible to reinstate it at the Visual Layer please?
Steps to reproduce the bug

Attempt to port app from UWP to Windows App sdk that uses a swapchain
Become sad when the APIs are missing

Expected behavior
No response
Screenshots
No response
NuGet package version
WinUI 3 - Windows App SDK 1.3 Experimental 1: 1.3.230202101-experimental1
Windows version
No response
Additional context
No response

Just for clarification, is this about using Microsoft.UI.Composition in general, or is it about using this in conjunction with Xaml?
If it is about using it in general, is there an issue stopping you from using Windows.UI.Composition? This is supported in desktop applications.

In conjunction with XAML. I would have thought the Windows AppSDK would offer a comprehensive solution.

From: DarranRowe @.>
Sent: Thursday, February 16, 2023 1:14:16 PM
To: microsoft/microsoft-ui-xaml @.>
Cc: smj389 @.>; Author @.>
Subject: Re: [microsoft/microsoft-ui-xaml] Microsoft.Ui.Composition parity with Windows.Ui.Composition (Issue #8192)
Just for clarification, is this about using Microsoft.UI.Composition in general, or is it about using this in conjunction with Xaml?
If it is about using it in general, is there an issue stopping you from using Windows.UI.Composition? This is supported in desktop applications.
—
Reply to this email directly, view it on GitHubhttps://github.com/microsoft/microsoft-ui-xaml/issues/8192#issuecomment-1433071115, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ADAOOECNAH2UWI4MQLMHBUTWXYR2HANCNFSM6AAAAAAU6AK4GA.
You are receiving this because you authored the thread.Message ID: @.***>

I have seen that in preview you have an API ContentExternalOutputLink which allows interop with DComposition. It would be good to be able to interop with Windows.UI.Composition as well.

Does ContentExternalOutputLink no longer exist in the latest version of WinUI3 (1.3.230228005-preview1)?

@ClearSeve - it exists in the latest experimental version (not preview.) But that doesn’t allow interoperability with Windows.UI.Composition only DComp.

@ClearSeve - it exists in the latest experimental version (not preview.) But that doesn’t allow interoperability with Windows.UI.Composition only DComp.

I see. Thank you very much

I see. Thank you very much


Fix use-after-free in descriptor extra data (1.1.0 regression)

Nan::NewBuffer takes ownership of the passed buffer, but the
descriptors are freed once converted to JS. Use Nan::CopyBuffer
instead, and remove the wrapper function, as it no longer wraps
multiple V8 calls.

lgtm.

I don't believe this is the root cause of https://github.com/tessel/t2-firmware/issues/121.
My test procedure:

inside the node_modules folder of t2-cli, rm -rf usb to get rid of existing library
cloned this repo recursively and checked out this branch
npm install
renamed the directory from node-usb to usb
ran t2 update
still got the same error

Manually applying this patch and rebuilding from source fixed the issue for me.

@CarlQLange which issue did this cause exactly?

Couldn't update the firmware due to an invalid DFU descriptor, but I also forced the use of usb 1.1.0 (not 1.0.6) as the older version was otherwise broken on Node 5.

Edit: I had to rebuild this branch manually (./node_modules/.bin/node-pre-gyp rebuild) because it was pulling from remote. After rebuilding, it fixed the issue for Tessel 2 as well!

@johnnyman727 re...

After rebuilding, it fixed the issue for Tessel 2 as well!

Does that mean you're no longer hitting the invalid DFU descriptor issue?

@johnnyman727 I saw your update on the other issue, so the answer is yes. This is great news!

:+1:


[R] Enable col_select or similar in open_csv_dataset to read files with a shared subset of columns

Describe the enhancement requested
Per the documentation, col_select is currently not supported in arrow::open_csv_dataset and it is recommended to "instead, subset columns after dataset creation".
This approach doesn't work, however, when the files don't share the total schema. Often, though, I may only care about a subset of columns which I know are shared by all the files, even if random other columns have been added in. It would be great if there was a way to specify that columns outside the schema should be ignored, or to enable col_select.
Component(s)
R

Could you do something like this?
library(arrow)
#> Some features are not enabled in this build of Arrow. Run `arrow_info()` for more information.
#>
#> Attaching package: 'arrow'
#> The following object is masked from 'package:utils':
#>
#>     timestamp
library(dplyr)
#>
#> Attaching package: 'dplyr'
#> The following objects are masked from 'package:stats':
#>
#>     filter, lag
#> The following objects are masked from 'package:base':
#>
#>     intersect, setdiff, setequal, union

tf <- tempfile()
dir.create(tf)
write_dataset(group_by(mtcars, am), tf, format = "csv")

columns_i_care_about <- c("mpg", "hp")

open_dataset(tf, format = "csv") %>%
  select(!!columns_i_care_about) %>%
  collect()
#> # A tibble: 32 × 2
#>      mpg    hp
#>    <dbl> <int>
#>  1  21.4   110
#>  2  18.7   175
#>  3  18.1   105
#>  4  14.3   245
#>  5  24.4    62
#>  6  22.8    95
#>  7  19.2   123
#>  8  17.8   123
#>  9  16.4   180
#> 10  17.3   180
#> # ℹ 22 more rows

Created on 2023-10-05 with reprex v2.0.2
If not, please can you make me a small reprex showing the kind of thing you'd like to do?

@thisisnic I don't know if this was updated in a recent Arrow version, but it looks like what I want works now!
Below is a reprex for it. read_csv(col_select = ...) actually does not work, so I'm glad open_dataset does!
Closing this issue.
suppressPackageStartupMessages(library(arrow))
suppressPackageStartupMessages(library(dplyr))

mtcars_part_1 <- mtcars |>
  filter(am == 0) |>
  select(mpg, cyl, disp)

mtcars_part_2 <- mtcars |>
  filter(am == 1) |>
  select(mpg, cyl, hp)

tf <- tempfile()
dir.create(tf)
tf1 <- tempfile(tmpdir=tf)
dir.create(tf1)
tf2 <- tempfile(tmpdir=tf)
dir.create(tf2)
write_csv_arrow(mtcars_part_1, file.path(tf1, "mtcars_subset.csv"))
write_csv_arrow(mtcars_part_2, file.path(tf2, "mtcars_subset.csv"))
csv_files <- list.files(tf, full.names = TRUE, recursive=TRUE)
basename(csv_files)
#> [1] "mtcars_subset.csv" "mtcars_subset.csv"

columns_i_care_about <- c("mpg", "cyl")

# This used to fail, but it seems to be working now...
open_csv_dataset(csv_files, unify_schemas = TRUE) |>
  collect()
#> # A tibble: 32 × 4
#>      mpg   cyl  disp    hp
#>    <dbl> <int> <dbl> <int>
#>  1  21.4     6  258     NA
#>  2  18.7     8  360     NA
#>  3  18.1     6  225     NA
#>  4  14.3     8  360     NA
#>  5  24.4     4  147.    NA
#>  6  22.8     4  141.    NA
#>  7  19.2     6  168.    NA
#>  8  17.8     6  168.    NA
#>  9  16.4     8  276.    NA
#> 10  17.3     8  276.    NA
#> # ℹ 22 more rows
open_csv_dataset(csv_files, unify_schemas = TRUE) |>
  select(!!columns_i_care_about) |>
  collect()
#> # A tibble: 32 × 2
#>      mpg   cyl
#>    <dbl> <int>
#>  1  21       6
#>  2  21       6
#>  3  22.8     4
#>  4  32.4     4
#>  5  30.4     4
#>  6  33.9     4
#>  7  27.3     4
#>  8  26       4
#>  9  30.4     4
#> 10  15.8     8
#> # ℹ 22 more rows

# read_csv(col_select = ) actually doesn't work...
readr::read_csv(csv_files)
#> Error: Files must have consistent column names:
#> * File 1 column 3 is: disp
#> * File 2 column 3 is: hp
readr::read_csv(csv_files, col_select = !!columns_i_care_about)
#> Error: Files must have consistent column names:
#> * File 1 column 3 is: disp
#> * File 2 column 3 is: hp

Created on 2023-10-08 with reprex v2.0.2

I'm glad it's working for you now, and thanks for supplying the reprex anyway, as it's always useful for us to know the kinds of things that users want to be able to do with arrow!


any examples on integrating dynamodb to this?

I am trying to build a CRUD application with this quickstart, any examples on how to store data from the mobile app to dynamodb.
Thank you

Hi @rohitkumarvinay ,
Here's almost the same code (without the ionic 2 part) that demonstrates the DynamoDB functionality: https://github.com/awslabs/aws-cognito-angular2-quickstart
Vladimir

I can add the ddb files to this, including createResource.sh?


[RFC] Add Support for PHP File Configuration

Description
Currently, Behat supports configuration through YAML files. While YAML is straightforward for many use cases, offering support for PHP configuration files could bring added flexibility and advantages, such as:

Enhanced readability for developers familiar with PHP syntax.
Leveraging PHP logic (e.g., conditions, constants, or reusable configurations).
Improved IDE support and type checking.

Proposal
Introduce support for configuring Behat using PHP files alongside the existing YAML configuration. This would involve:

Parsing configurations from a behat.php file if present.
Maintaining backward compatibility with YAML configuration files (behat.yml, behat.yaml).
Providing a basic example of a PHP configuration file in the documentation.

Benefits

Greater flexibility in defining configurations.
Ability to dynamically generate configurations based on environment or context.
Seamless integration with PHP constants, variables, and classes.

Example
Here’s an example of what a PHP configuration file (behat.php) could look like:
use Behat\Config\Config;

return new Config([
    'default' => [
        'gherkin' => [
            'filters' => [
                'tags' => '~@php8'
            ],
        ],
    ],
]);

Implementation Notes

Extend the Behat configuration loader to check for behat.php.
Update the documentation to explain the new option and its use cases.

Future helpers
We can do everything with a simple array. But to improve the DX, we can add some helpers to the Config object.
Importing Configuration Files
To make configurations modular and reusable, the PHP file should support importing other files.
It's already possible with the previous proposal:
use Behat\Config\Config;

return new Config([
    'imports' => [
        __DIR__.'/other-config.php'
    ],
])

But we need some helpers to improve the DX.
For instance:
use Behat\Config\Config;

$config = new Config();
$config->import('config/suites.php');

return $config;

We can import several configuration files with the same "import" method.
use Behat\Config\Config;

$config = new Config();
$config->import([
    'config/extensions.php',
    'config/suites.php',
]);

return $config;

We can also introduce more smart imports.
use Behat\Config\Config;

$config = new Config();
$config->import('config/**/**.php');

return $config;

Adding suites
Here's is just a proposal, it needs to be discussed.
use App\Tests\Behat\Context\FirstContext;
use App\Tests\Behat\Context\SecondContext;
use Behat\Config\Config;
use Behat\Config\Profile;
use Behat\Config\Suite;

$defaultProfile = (new Profile('default'))
    ->withSuite($adminDashboardSuite);
;

$defaultProfile->withSuite(
    new Suite(
        name: 'admin_dashboard',
        settings: [
            'contexts' => [
                FirstContext::class,
                SecondContext::class,
            ],
            'filters' => [
                'tags' => '@admin&&@dashboard'
            ],
        ],
    )
);

return new (Config())
    ->withProfile($defaultProfile)
;

or using more helpers
use App\Tests\Behat\Context\FirstContext;
use App\Tests\Behat\Context\SecondContext;
use Behat\Config\Config;
use Behat\Config\Profile;
use Behat\Config\Suite;

$adminDashboardSuite = (new Suite(name: 'admin_dashboard'))
    ->withFilters(['tags' => ['@admin&&@dashboard']])
    ->withContexts(
        FirstContext::class,
        SecondContext::class
    )
;

$defaultProfile = (new Profile('default'))
    ->withSuite($adminDashboardSuite)
;

return (new Config())
    ->withProfile($defaultProfile)
;

Overall solution
The main config file
use Behat\Config\Config;
use Behat\Config\Extension;
use Behat\Config\Profile;
use FriendsOfBehat\MinkDebugExtension;
use Robertfausk\Behat\PantherExtension;

$defaultProfile = (new profile('default'))
    ->import('config/suites/**/**.php')
    ->withFormatters([
        'pretty' => [
            'verbose' => true,
            'paths' => false,
            'snippets' => false,
        ],
    ])
    ->withExtension(new Extension(PantherExtension::class))
    ->withExtension(new Extension(MinkDebugExtension::class, [
        'directory' => 'etc/build',
        'clean_start' => true,
        'screenshot' => true,
    ]))
;

return (new Config())->withProfile($defaultProfile);

A first suite config file
// config/suites/admin_dashboard.php
use App\Tests\Behat\Context\FirstContext;
use App\Tests\Behat\Context\SecondContext;
use Behat\Config\Config;
use Behat\Config\Profile;
use Behat\Config\Suite;

use App\Tests\Behat\Context\FirstContext;
use App\Tests\Behat\Context\SecondContext;
use Behat\Config\Config;
use Behat\Config\Profile;
use Behat\Config\Suite;

$suite = (new Suite(name: 'admin_dashboard'))
    ->withFilters(['tags' => ['@admin&&@dashboard']])
    ->withContexts(
        FirstContext::class,
        SecondContext::class,
    )
;

return (new Config())
    ->withProfile((new Profile('default'))
        ->withSuite($suite)
    )
;

Maybe that would be better like this:
use App\Tests\Behat\Context\FirstContext;
use App\Tests\Behat\Context\SecondContext;
use Behat\Config\Config;
use Behat\Config\Suite;

$suite = (new Suite(name: 'admin_dashboard'))
    ->withFilters(['tags' => ['@admin&&@dashboard']])
    ->withContexts(
        FirstContext::class,
        SecondContext::class,
    )
;

$config = (new Config())
    ->withSuite(suite: $suite, profile: 'default')
;

Ahhh so the basic Config object just wraps a plain array but then we can add simple typehinted/self-documenting sugar methods/classes to help populate the expected schema?
So by the time the array gets into behat itself there's no difference to whether it came from yaml or PHP?
And in fact then an extension could define a DTO for its own config that people could use if they wanted to, so that helps with the extensibility question.
That could work, and probably solves my concern about maintenance. I guess we'd just be able to test the helpers by asserting that the php config files parse identically to the yaml equivalent, rather than having to run a full Behat with each type of config. That should be quite an easy way to get confidence.
I can definitely see the value in being able to reference things like class names, E_ALL (which people currently have to put in yaml as an int with a comment beside)
And I can see that for some people - probably including me - accessing environment variables from the PHP direct rather than learning where/how they can be used in the yaml syntax would be good.
If the php config became more commonly used in future, it could also allow us to deprecate things like some of the "magic" for guessing extension class names based on a partial name. I think that's really only there to make the yaml less verbose, but it causes a bit of confusion about the rules and how to make it work with autoloaders. For php you could just reference MyExtension::class and add a use statement if you wanted, which would be much simpler. Having those as clickable class references in an IDE would also make it much easier for a user to understand how the extension is wired etc.
From your fuller proposal and after thinking a bit more I am in favour of this but would like to hear what @carlos-granados and @ttomdewit think.

I am fully in favour of this. I try to use php configuration where possible, this brings a lot of benefits, including better IDE support and the capability to lint your files using static analysers. See this blog post for more info about using this for Symfony config https://tomasvotruba.com/blog/2020/07/16/10-cool-features-you-get-after-switching-from-yaml-to-php-configs/
It would be great if we could get some of these benefits in Behat as well

@ciaranmcnulty :-)

Supporting DTOs etc for partial configuration
Picking up on https://github.com/Behat/Behat/pull/1537#discussion_r1853694976 and the GenericSuite example above, is probably a case for supporting simple DTOs that contain partial configuration. For example, as an extension writer I might want to provide a DTO with just the valid options for my extension (rather than re-implementing / extending the sugar features on Behat\Config\Config).
But these DTOs need to be converted back to plain arrays somewhere. There are probably two ways to do that:

Support that on specific individual sugar methods e.g. in the ->withSuite(new GenericSuite(...)) example above, the withSuite method would cast to an array before adding it to $this->settings. This might mean either withSuite or GenericSuite having to check for and serialise nested DTOs within their arguments.
Have the config reader take care of recursively casting objects to arrays, based on an interface.

Handling this separately in the sugar methods feels like it will get quite repetitive, and might mean adding sugar methods we don't really need just to be able to pass them an object to turn into an array.
So I think it probably makes more sense if we go for the second approach and handle this in one place when we finally transform the overall config structure back into an array in ConfigurationLoader.

@acoulton I've updated the issue to have an idea of the overall feature. I'm using every working day for ten years, I want something great to use too.

@loic425 thanks for the updates on this and the PR, just to say I will make time on Saturday evening to look at things properly.

@loic425 thanks for all your thought & work on this. Asking for more examples & more time was as much just that I was struggling to see the whole picture from the pieces we had so far, partly because it's taken me a while to be back to 100% brainpower after being ill. I hope I didn't come across as too critical, like you I just want to make sure we end up with something that works for everyone.
I've had a good look at this now, and I've tried converting a couple of .yaml from our own projects to the syntax you've proposed to get a better sense of how it looks for a bigger / more complex set of files, and how easy it is to structure & format them in the IDE. I did also experiment with using more named constructor params instead of helper methods, and actually I don't think that really helps readability/DX and is definitely less flexible.
I think the direction you're going (with my small comments on #1547 about naming / possibly skipping some of the DTO interfaces) is going to work well.
In isolation, I like your last suggestion above:
$config = (new Config())
    ->withSuite(suite: $suite, profile: 'default')
;

But when I tried adding tester options, formatters, extensions, etc in that pattern with multiple profiles I found it quickly got hard to follow which things were in which profile.
So I would stick with the approach you discussed with @carlos-granados and implemented in #1547, with the Profile object as the container for all the config helpers for a single profile.

@acoulton thx a lot for all your work testing the solution we're trying to cook. Don't worry, I know this kind of PRs has a lot of "ping pong".

Looks like PHPStan is going in this direction too 😊 https://github.com/phpstan/phpstan/issues/12158

@acoulton @carlos-granados FYI, I still have some PRs todo for the PHP config. I'll continue tomorrow.

@acoulton @carlos-granados FYI, I still have some PRs todo for the PHP config. I'll continue tomorrow.

Thanks. We should also start thinking about adding some changes to our documentation

@carlos-granados @acoulton
FYI, I've started a PR about PHP config documentation.
https://github.com/Behat/docs/pull/179

@loic425 do you have plans for adding any more changes to the php config? If not, @acoulton we may have to think about doing a new release now that this and the conversion of snippets to attributes are done

@carlos-granados For me, it's ready for the PHP config for a new release.
I plan the "glob" support for importing file feature, but it's another thing and I don't know where I'll able to work on this.

@carlos-granados @loic425 great! I think it's fine for the glob support to be an enhancement in a future release.
Definitely we should cut another release, there's just a couple of small issues that @stof spotted on the attributes PR #1549 after it was merged that we should fix first.

I think that after merging https://github.com/Behat/Behat/pull/1569 we can close this issue. Do you agree @acoulton and @loic425 ?

I think that after merging #1569 we can close this issue. Do you agree @acoulton and @loic425 ?

Yes!

The only thing is I'm not sure if the docs are complete? If not, if we close this we should add an issue to Behat/Docs (and ideally tackle that soon, while the code is fresh).

@loic425 to finish this work we need to do more work on the documentation. I have created a new issue in the Behat/docs repo https://github.com/Behat/docs/issues/184 and will close this one


[ADD] Share button with on-click menu

Details

A circular button is made with a share symbol in between.
On click, the button rotates by 360 deg, and 8 small button are displayed surrounded the share button with borders appearing around each button on hover.

Screenshots
https://github.com/Spyware007/Animating-Buttons/assets/96361743/165be6e6-aeb2-4996-bae2-9b431e9177b9
Type of Contribution

[ ] Update to an existing Animated Button
[X] Adding a new Button
[ ] Resolving a bug
[X] Proposal to the Repository
[ ] Changes related to documentation or README.md
[ ] Other Changes

Checklist

[X] I have checked the existing issues
[X] I have read the Contributing Guidelines
[X] I am willing to work on this issue
[X] I am a GSSoC'23 contributor

Please check #1346


It wont open anymore

hey so it opened fine when i first installed it so then when i was trying to load my new account it said not responded and crash and every since then it didnt open anymore, even if i reinstalled or re ran the switcher pls help

Refresh your osu! by deleting osu!.db (it will gen a new one on next osu! startup) and then reinstall the program. If that doesn't work, please make another post.

Refresh your osu! by deleting osu!.db (it will gen a new one on next osu! startup) and then reinstall the program. If that doesn't work, please make another post.

doesnt work


Use angular router error on 2.2.0

Ionic version:  (check one with "x")
[ ] 1.x
[x] 2.x
I'm submitting a ...  (check one with "x")
[x] bug report
[ ] feature request
[ ] support request => Please do not submit support requests here, use one of these channels: https://forum.ionicframework.com/ or http://ionicworldwide.herokuapp.com/
Current behavior:
when I use angular router to change the view,it makes an error at
NavControllerBase.prototype.getActive = function () {
    return this._views[this._views.length - 1];
};

this._views is null.
It was working very well, until I updated to 2.2.0.
Expected behavior:

Steps to reproduce:

Related code:
app-routing.module
import { NgModule } from '@angular/core';
import { RouterModule, Routes } from '@angular/router';

const appRoutes: Routes = [
  {
    path: '',
    redirectTo: '/home',
    pathMatch: 'full'
  }
];

@NgModule({
  declarations: [
  ],
  imports: [
    RouterModule.forRoot(appRoutes),
  ],
  exports: [
    RouterModule
  ]
})
export class AppRoutingModule {}

home.module.ts
import { NgModule } from '@angular/core';
import { IonicModule } from 'ionic-angular';
import { RouterModule, Routes } from '@angular/router';

import { AuthGuard } from '../../services/auth.module';
import { HomeComponent } from './home.component';
import { RecommendPage } from './recommend/recommend.component';
import { FootNavModule } from '../foot/foot-nav.module';

import { HomeService } from './home.service';

const homeRoutes: Routes = [
  { path: 'home', component: HomeComponent, canActivate: [AuthGuard] }
];

@NgModule({
  declarations: [
    HomeComponent,
    RecommendPage
  ],
  imports: [
    FootNavModule,
    RouterModule.forChild(homeRoutes),
    IonicModule
  ],
  entryComponents: [
    HomeComponent,
    RecommendPage
  ],
  providers: [HomeService]
})
export class HomeModule {
  constructor() {
    console.log('init HomeModule');
  }
}

home.component.ts:
import { Component } from '@angular/core';
import { RecommendPage } from './recommend/recommend.component';

@Component({
  template: '<ion-nav [root]="rootPage"></ion-nav>'
})

export class HomeComponent {
  // First page to push onto the stack
  rootPage = RecommendPage;
}

FootNavComponent
import { Component, Input } from '@angular/core';
import { Router } from '@angular/router';

@Component({
  selector: 'foot-nav',
  templateUrl: 'foot-nav.html'
})

export class FootNavComponent {
  @Input() curNav: string;

  constructor(private router: Router) {}

  toHome() {
    this.router.navigate(['/home']);
  }

  toMy() {
    this.router.navigate(['/my']);
  }
}

Other information:

Ionic info: (run ionic info from a terminal/cmd prompt and paste output below):
Your system information:

Cordova CLI: 6.5.0
Ionic Framework Version: 2.2.0
Ionic CLI Version: 2.2.1
Ionic App Lib Version: 2.2.0
Ionic App Scripts Version: 1.1.4
ios-deploy version: Not installed
ios-sim version: Not installed
OS: Windows 10
Node Version: v6.2.0
Xcode version: Not installed

Hello, thanks for using Ionic! We do not currently support using the Angular router with Ionic and instead recommend that you use our built in routing solution (http://ionicframework.com/docs/v2/components/#navigation and http://ionicframework.com/docs/v2/api/navigation/DeepLinker/). Thanks!


Pigeon generated Objective-C code produces warning A function declaration without a prototype is deprecated in all versions of C

In the implementation:
url_launcher_ios-6.1.3/ios/Classes/messages.g.m:27:57 A function declaration without a prototype is deprecated in all versions of C

NSObject<FlutterMessageCodec> *FULUrlLauncherApiGetCodec() {

should have a void:
NSObject<FlutterMessageCodec> *FULUrlLauncherApiGetCodec(void) {

https://github.com/flutter/packages/blob/36d412490a5fb90811902c5d91c95a9debf39b49/packages/pigeon/lib/objc_generator.dart#L781-L782
Not sure why none of our scripts in CI caught the warning.
cc @tarrinneal https://github.com/flutter/packages/pull/3037

Not sure why none of our scripts in CI caught the warning.

Hm, where exactly are you seeing this? Is it an Xcode version thing maybe?
(I just build the url_launcher_ios example in Xcode 14.0 and didn't see it for example.)

I'm on 14.3, guess this is new.  I'll check on 14.2 when I get a chance.

Yep, it's new in clang 15/Xcode 14.3 based on some threads I found. E.g., https://developer.apple.com/forums/thread/725753


Global Date Format

From @ZackTech on Friday, 25 January 2019 16:50:23
I am developing an Asp.net Core version 2 Web Api and Web Front End. In one of my entry forms I am using a Boostrap date picker. When I run the application on my own PC even connected to the Azure database everything runs normally. On Azure when the model validates server side I get Invalid Date Format. I think server side it has decided to use the US date format.
Is there a global setting I can set just once which I can set it to use UK format irrespective of what hardware the software is sitting on. If that does not exist can we please have one?
Copied from original issue: dotnet/coreclr#22210

Thanks for contacting us. We're closing this issue as there was no community involvement here for quite a while now.


⚠ Bofrost.lu has degraded performance

In 1e83f55, Bofrost.lu (https://www.bofrost.lu) experienced degraded performance:

HTTP code: 200
Response time: 1060 ms

Resolved: Bofrost.lu performance has improved in c07ae39 after 13 minutes.


Publisher should be namespaced, RegistryServer should not

making an issue out of this comment
Let's change the Publisher to be fully-namespaced, i.e. to watch for HTTPProxy resources in all namespaces, and to create the ServiceRecord in the same namespace as the HTTPProxy. Then we can rely on ownerReferences to ensure cleanup of the ServiceRecords.
Then the RegistryServer can be configured to watch for 1/some/all namespaces when serving.

Another nice impact of this change (if I understand correctly, and perhaps obviously) is the feedback it provides to the user adding the export label to their HTTProxy resource, as they will now be able to see the ServiceRecord that gets created due to that declaration of intent when they list resources in their namespace.

Capturing some notes from our call:

Publisher binary could be running in a "system" namespace
Think through downtime implications, e.g. existing systems relying on the ServiceRecord in a "system" namespace

Also worth checking to make sure our RBAC for the publisher is updated to allow writing ServiceRecords to any namespace.

Our publisher will only reconcile against HTTPProxy (for now).  Therefore:

if it encounters a ServiceRecord w/ ownerRef to an HTTPProxy, and if that HTTPProxy is unlabeled, then our controller should delete the ServiceRecord.
if the ownerRef doesn't exist, or points at an object other than HTTPProxy, then no-op

We might also want to update our architecture doc in the same PR to keep it up-to-date: https://github.com/vmware-tanzu/cross-cluster-connectivity/blob/main/doc/arch.md. Namely the diagram.


Performance is poor when build into android app

Performance is poor when build into android app

Have you tried using Crosswalk?


Add relative option to lcov format files.

When using coverage with lcov files, reports are created using absolute paths.
There is a good reason to want to generate the report using relative paths. This is both for security reasons and when using an external service in another location such as SonarQube in long delivery pipelines.
This PR offers the option to create the reports with relative paths, this option is turned off by default.
Refers to #104

Looking forward to seeing this released. It'll clean up the need to do post-processing on the generated lcov file.

I have a real need for this as well. I hope to see it merged soon.

Hi, is there any update as to when this is likely to be released, we're having issues with sonarqube and istanbul because of absolute vs relative paths ?

As a workaround I'm using sed to modify the file after it's been generated. Something like this:
# convert absolute paths to relative before sonar runs
sed -i 's|SF:/part_of_path_i_want_to_go_away/|SF:|g' coverage/report-lcov/lcov.info

You are the man, that’s been driving me insane all week ☺ Any plans to implement a permanent solution ?
From: titocr<EMAIL_ADDRESS>Reply-To: gotwarlost/istanbul<EMAIL_ADDRESS>Date: Thursday, 7 September 2017 at 23:39
To: gotwarlost/istanbul<EMAIL_ADDRESS>Cc: Tim Heap<EMAIL_ADDRESS>Manual<EMAIL_ADDRESS>Subject: [EXTERNAL] Re: [gotwarlost/istanbul] Add relative option to lcov format files. (#771)
As a workaround I'm using sed to modify the file after it's been generated. Something like this:
convert absolute paths to relative before sonar runs
sed -i 's|SF:/part_of_path_i_want_to_go_away/|SF:|g' coverage/report-lcov/lcov.info
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHubhttps://github.com/gotwarlost/istanbul/pull/771#issuecomment-327945992, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AGqbywr8S63WDYxEKC8o4coNUWWDekUCks5sgHCkgaJpZM4MPWw5.

This message is intended for the stated addressee(s) only and may be confidential. Access to this email by anyone else is unauthorised. Any opinions expressed in this email do not necessarily reflect the opinions of BGL Group Limited and its subsidiaries . Any unauthorised disclosure, use or dissemination, either whole or in part is prohibited. If you are not the intended recipient of this message, please notify the sender immediately.
Please scan all attachments for viruses.

Glad to help. As for a permanent fix, as I understand it, it's sitting here with the commit @miguelrincon did. I'm just waiting on it like everyone else ;-)

Yes I saw that post ☺
From: titocr<EMAIL_ADDRESS>Reply-To: gotwarlost/istanbul<EMAIL_ADDRESS>Date: Saturday, 9 September 2017 at 18:06
To: gotwarlost/istanbul<EMAIL_ADDRESS>Cc: Tim Heap<EMAIL_ADDRESS>Manual<EMAIL_ADDRESS>Subject: [EXTERNAL] Re: [gotwarlost/istanbul] Add relative option to lcov format files. (#771)
Glad to help. As for a permanent fix, as I understand it, it's sitting here with the commit @miguelrinconhttps://github.com/miguelrincon did. I'm just waiting on it like everyone else ;-)
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHubhttps://github.com/gotwarlost/istanbul/pull/771#issuecomment-328290494, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AGqby8VRQnSiCvukEP8ZROXpyE5K9Rlrks5sgsWfgaJpZM4MPWw5.

This message is intended for the stated addressee(s) only and may be confidential. Access to this email by anyone else is unauthorised. Any opinions expressed in this email do not necessarily reflect the opinions of BGL Group Limited and its subsidiaries . Any unauthorised disclosure, use or dissemination, either whole or in part is prohibited. If you are not the intended recipient of this message, please notify the sender immediately.
Please scan all attachments for viruses.

Hi, still struggling with getting this working on CI.
If I have a file called lcov.info which contains this line :
SF:deploy/app/shared/services/sharedServicesModule.js
And I simply want to remove the deploy/ part so it becomes SF:app/shared/services/sharedServicesModule.js
then this should work, right ?
sed -i 's|SF:deploy/|SF:|g'
From: titocr<EMAIL_ADDRESS>Reply-To: gotwarlost/istanbul<EMAIL_ADDRESS>Date: Saturday, 9 September 2017 at 18:06
To: gotwarlost/istanbul<EMAIL_ADDRESS>Cc: Tim Heap<EMAIL_ADDRESS>Manual<EMAIL_ADDRESS>Subject: [EXTERNAL] Re: [gotwarlost/istanbul] Add relative option to lcov format files. (#771)
Glad to help. As for a permanent fix, as I understand it, it's sitting here with the commit @miguelrinconhttps://github.com/miguelrincon did. I'm just waiting on it like everyone else ;-)
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHubhttps://github.com/gotwarlost/istanbul/pull/771#issuecomment-328290494, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AGqby8VRQnSiCvukEP8ZROXpyE5K9Rlrks5sgsWfgaJpZM4MPWw5.

This message is intended for the stated addressee(s) only and may be confidential. Access to this email by anyone else is unauthorised. Any opinions expressed in this email do not necessarily reflect the opinions of BGL Group Limited and its subsidiaries . Any unauthorised disclosure, use or dissemination, either whole or in part is prohibited. If you are not the intended recipient of this message, please notify the sender immediately.
Please scan all attachments for viruses.

Our CI is jenkins and this is the line I use (changed only the last part of the path). I had to try a couple different things before discovering what path was needed.

sed -i 's|SF:/opt/jenkins/workspace/myProject/|SF:|g' coverage/report-lcov/lcov.info

An altered line in lcov.info, before and after:

SF:/opt/jenkins/workspace/myProject/src/app/config/app_config.js
SF:src/app/config/app_config.js

Hope that helps.

Thanks I have this working now.
From: titocr<EMAIL_ADDRESS>Reply-To: gotwarlost/istanbul<EMAIL_ADDRESS>Date: Monday, 11 September 2017 at 15:59
To: gotwarlost/istanbul<EMAIL_ADDRESS>Cc: Tim Heap<EMAIL_ADDRESS>Manual<EMAIL_ADDRESS>Subject: [EXTERNAL] Re: [gotwarlost/istanbul] Add relative option to lcov format files. (#771)
Our CI is jenkins and this is the line I use (changed only the last part of the path). I had to try a couple different things before discovering what path was needed.
sed -i 's|SF:/opt/jenkins/workspace/myProject/|SF:|g' coverage/report-lcov/lcov.info
An altered line in lcov.info, before and after:
SF:/opt/jenkins/workspace/myProject/src/app/config/app_config.js
SF:src/app/config/app_config.js
Hope that helps.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHubhttps://github.com/gotwarlost/istanbul/pull/771#issuecomment-328556689, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AGqby67cPJIEaRtInSBNN3rwyys80LJ-ks5shUq9gaJpZM4MPWw5.

This message is intended for the stated addressee(s) only and may be confidential. Access to this email by anyone else is unauthorised. Any opinions expressed in this email do not necessarily reflect the opinions of BGL Group Limited and its subsidiaries . Any unauthorised disclosure, use or dissemination, either whole or in part is prohibited. If you are not the intended recipient of this message, please notify the sender immediately.
Please scan all attachments for viruses.

Hi, does Istanbul run on windows for c sharp code , and if not are there any plans for it in the future ? looking at ways of surfacing code coverage with sonarqube for some of our projects.
From: titocr<EMAIL_ADDRESS>Reply-To: gotwarlost/istanbul<EMAIL_ADDRESS>Date: Monday, 11 September 2017 at 15:59
To: gotwarlost/istanbul<EMAIL_ADDRESS>Cc: Tim Heap<EMAIL_ADDRESS>Manual<EMAIL_ADDRESS>Subject: [EXTERNAL] Re: [gotwarlost/istanbul] Add relative option to lcov format files. (#771)
Our CI is jenkins and this is the line I use (changed only the last part of the path). I had to try a couple different things before discovering what path was needed.
sed -i 's|SF:/opt/jenkins/workspace/myProject/|SF:|g' coverage/report-lcov/lcov.info
An altered line in lcov.info, before and after:
SF:/opt/jenkins/workspace/myProject/src/app/config/app_config.js
SF:src/app/config/app_config.js
Hope that helps.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHubhttps://github.com/gotwarlost/istanbul/pull/771#issuecomment-328556689, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AGqby67cPJIEaRtInSBNN3rwyys80LJ-ks5shUq9gaJpZM4MPWw5.

This message is intended for the stated addressee(s) only and may be confidential. Access to this email by anyone else is unauthorised. Any opinions expressed in this email do not necessarily reflect the opinions of BGL Group Limited and its subsidiaries . Any unauthorised disclosure, use or dissemination, either whole or in part is prohibited. If you are not the intended recipient of this message, please notify the sender immediately.
Please scan all attachments for viruses.

I would love to see this merged. Our build pipeline includes running tests on one docker container and using instanbul to report coverage in another machine using sonarqube.
We really need this option.

Would also like this change

any idea if this is likely to happen any time soon ?

Looks like this repository has been deprecated, nyc is the replacement for this tool, but it too, does not support relative paths.
So I've solved this for myself like some others in this thread with sed, however instead of making the path relative, just encase that brakes something else, I update the path to be absolute to the current directory with sed -i "s|SF:/app|SF:$(pwd)|g" lcov.info

In a Typescript Angular 6 project I needed to make the path to be that of the Docker image used for the sonar-scanner. Since the path could change in the build pipeline (BitBucker) I used the following sed expression:
sed -i "s|SF:/.*/my-project/|SF:/root/src/|g" test-reports/lcov.info
where /root/src is the name of the mapped folder of the current folder in the Docker container that was started by the following command:
docker run -ti -v $(pwd):/root/src newtmitch/sonar-scanner

This is such a small change. What's the blocker? Lack of maintainers?

Hey, it would be a very useful changement, what is blocking ?

I would love to see this merged too !

Anything new for this PR ? It would be really useful to have this option !
It's not that I don't like sed but... 😅

2 years and still not merged 🤦♂

What's stopping this from being merged?  I really need this feature.

On Github (with actions), I successfully used sed -i "s|SF:/.*/src/|SF:/github/workspace/src/|g" coverage/lcov.info

I've put a hack on this in 2017, it's still an issue now...

I've added the sed hack as well, but it'd be nice to get this merged...

I'd really like to have this 2-year old (and counting) much needed fix to be merged, also!
Any way to speed that up?

When will this be merged, it's been more than 2 years ?

3+ years and finally approved, Please merge it in

I started to use sed as a work-around and this is approved. lol

Believe for the PR to work properly (at least in CLI mode), some additional changes are needed.   I've include this PR in my fork istanbul-moos, which includes the fix for the CLI if anyone is interested.

It seems like many people are interested in it and will never get the fix...
On Wed, Jul 8, 2020 at 7:06 PM Moos<EMAIL_ADDRESS>wrote:

Believe for the PR to work properly (at least in CLI mode), some
additional changes are needed. I've include this PR in my fork
istanbul-moos https://github.com/moos/istanbul, which includes the fix
for the CLI
https://github.com/moos/istanbul/commit/5ae1f40f42f38b8c3dbafdb492e0e64c6e02a59e
if anyone is interested.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/gotwarlost/istanbul/pull/771#issuecomment-655819870,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AD6MLMHR57UFYXDMH66IIV3R2UCZ5ANCNFSM4DB5NQ4Q
.

I don't know if I'm authorized to approve the commit but I did it 😅
I'm interested by this fix too, how can we move forward about it ?

I don't know if I'm authorized to approve the commit but I did it 😅
I'm interested by this fix too, how can we move forward about it ?

I don't know if I'm authorized to approve the commit but I did it 😅
I'm interested by this fix too, how can we move forward about it ?

@gotwarlost or someone else with Write Access would have to come click merge...

I don't know if I'm authorized to approve the commit but I did it 😅
I'm interested by this fix too, how can we move forward about it ?

@gotwarlost or someone else with Write Access would have to come click merge...

Thanks for explanations @Isabello, I just figured out the Deprecation Notice in this repo's README.md file :
Deprecation Notice: this version of istanbul is deprecated, we will not be landing pull requests or releasing new versions. But don't worry, the Istanbul 2.0 API is now available and is being actively developed in the new istanbuljs organization.

So I suppose we can't expect anything from this pull request 😕
As advised in the notice, I turn myself to this repo

Thanks for explanations @Isabello, I just figured out the Deprecation Notice in this repo's README.md file :
Deprecation Notice: this version of istanbul is deprecated, we will not be landing pull requests or releasing new versions. But don't worry, the Istanbul 2.0 API is now available and is being actively developed in the new istanbuljs organization.

So I suppose we can't expect anything from this pull request 😕
As advised in the notice, I turn myself to this repo

Wow it's hard to believe that it's been 2 years and this issue has not been resolved. I also run into exact issue

@runlevel5 Like I said in post above, this repo is deprecated and, IMO, not maintained anymore.
You can take a look at this repo instead.

The active former-fork of istanbul is here, and I believe this issue has been resolved there.
@gotwarlost if you have the time could you archive your original version of istanbul, or at least add a giant banner that it's no longer maintained with a pointer to the current version? This repo still pops up in search results far more than it should.


Cleanup cellservice writeback changesets

Cell Service Clean Up

Added deprecation notice to write values, removed dependency on change set wrapper
Update transaction log methods to use write_value instead of write_values
Changed write_dataframe to use the new write function to support TI and changesets
Added exception when TI and Change sets are used at the same time

@MariusWirtz I also wanted to standardize the return types of the 2 main Write functions (Dataframe, and Write). When using ChangeSets it would be useful to return the changeset id so a user could call UndoChangeSet. I was thinking of using a similar pattern to TI processers, where the functions return 3 obects

write successful: bool
changeset: str
response: Response

Before I get into it, what is your thoughts?

@MariusWirtz I also wanted to standardize the return types of the 2 main Write functions (Dataframe, and Write). When using ChangeSets it would be useful to return the changeset id so a user could call UndoChangeSet. I was thinking of using a similar pattern to TI processers, where the functions return 3 obects

write successful: bool
changeset: str
response: Response

Before I get into it, what is your thoughts?

@MariusWirtz I also wanted to standardize the return types of the 2 main Write functions (Dataframe, and Write). When using ChangeSets it would be useful to return the changeset id so a user could call UndoChangeSet. I was thinking of using a similar pattern to TI processers, where the functions return 3 obects

write successful: bool
changeset: str
response: Response

Before I get into it, what is your thoughts?

I like this idea! Now is a good moment to implement it before the two functions are officially released.
The write function doesn't provide a single response object to return if the use_ti option is used, but I guess then the response can just be None. Or how would you handle that case?

@MariusWirtz I also wanted to standardize the return types of the 2 main Write functions (Dataframe, and Write). When using ChangeSets it would be useful to return the changeset id so a user could call UndoChangeSet. I was thinking of using a similar pattern to TI processers, where the functions return 3 obects

write successful: bool
changeset: str
response: Response

Before I get into it, what is your thoughts?

I like this idea! Now is a good moment to implement it before the two functions are officially released.
The write function doesn't provide a single response object to return if the use_ti option is used, but I guess then the response can just be None. Or how would you handle that case?

I was thinking of structuring the return as follows
WriteSuccess: bool
ChangeSetID: string/none
WriteMessages (for TI content of log file, or response body for a direct cell update): string/none
Sent from my mobile device.
On Jan 13, 2021 12:02 AM, Marius Wirtz<EMAIL_ADDRESS>wrote:
@MariusWirtzhttps://github.com/MariusWirtz I also wanted to standardize the return types of the 2 main Write functions (Dataframe, and Write). When using ChangeSets it would be useful to return the changeset id so a user could call UndoChangeSet. I was thinking of using a similar pattern to TI processers, where the functions return 3 obects

write successful: bool
changeset: str
response: Response

Before I get into it, what is your thoughts?
I like this idea! Now is a good moment to implement it before the two functions are officially released.
The write function doesn't provide a single response object to return if the use_ti option is used, but I guess then the response can just be None. Or how would you handle that case?

You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/cubewise-code/tm1py/pull/454#issuecomment-759276227, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AEK7GZVGY22NE5AGV2BKU6TSZVHOPANCNFSM4WAAUUCA.

I was thinking of structuring the return as follows
WriteSuccess: bool
ChangeSetID: string/none
WriteMessages (for TI content of log file, or response body for a direct cell update): string/none
Sent from my mobile device.
On Jan 13, 2021 12:02 AM, Marius Wirtz<EMAIL_ADDRESS>wrote:
@MariusWirtzhttps://github.com/MariusWirtz I also wanted to standardize the return types of the 2 main Write functions (Dataframe, and Write). When using ChangeSets it would be useful to return the changeset id so a user could call UndoChangeSet. I was thinking of using a similar pattern to TI processers, where the functions return 3 obects

write successful: bool
changeset: str
response: Response

Before I get into it, what is your thoughts?
I like this idea! Now is a good moment to implement it before the two functions are officially released.
The write function doesn't provide a single response object to return if the use_ti option is used, but I guess then the response can just be None. Or how would you handle that case?

You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/cubewise-code/tm1py/pull/454#issuecomment-759276227, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AEK7GZVGY22NE5AGV2BKU6TSZVHOPANCNFSM4WAAUUCA.

Very cool improvement @rclapp. Had no idea of changesets before, looks very promising. Now I wonder far you can go back in time to reverse a change via the changeset id.

Very cool improvement @rclapp. Had no idea of changesets before, looks very promising. Now I wonder far you can go back in time to reverse a change via the changeset id.

I was thinking of structuring the return as follows
WriteSuccess: bool
ChangeSetID: string/none
WriteMessages (for TI content of log file, or response body for a direct cell update): string/none

Sounds good. As the third return value, we may want to return a list by default. When multiple unbound processes are used, behind the scenes, we may need to return a couple of ti-log file references.

I was thinking of structuring the return as follows
WriteSuccess: bool
ChangeSetID: string/none
WriteMessages (for TI content of log file, or response body for a direct cell update): string/none

Sounds good. As the third return value, we may want to return a list by default. When multiple unbound processes are used, behind the scenes, we may need to return a couple of ti-log file references.

Sounds good.
Sent from my mobile device.
On Jan 13, 2021 2:51 AM, Marius Wirtz<EMAIL_ADDRESS>wrote:
I was thinking of structuring the return as follows
WriteSuccess: bool
ChangeSetID: string/none
WriteMessages (for TI content of log file, or response body for a direct cell update): string/none
Sounds good. As the third return value, we may want to return a list by default. When multiple unbound processes are used, behind the scenes, we may need to return a couple of ti-log file references.

You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/cubewise-code/tm1py/pull/454#issuecomment-759368677, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AEK7GZRL4PWI24NIDR6XMDDSZV3JLANCNFSM4WAAUUCA.

Sounds good.
Sent from my mobile device.
On Jan 13, 2021 2:51 AM, Marius Wirtz<EMAIL_ADDRESS>wrote:
I was thinking of structuring the return as follows
WriteSuccess: bool
ChangeSetID: string/none
WriteMessages (for TI content of log file, or response body for a direct cell update): string/none
Sounds good. As the third return value, we may want to return a list by default. When multiple unbound processes are used, behind the scenes, we may need to return a couple of ti-log file references.

You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/cubewise-code/tm1py/pull/454#issuecomment-759368677, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AEK7GZRL4PWI24NIDR6XMDDSZV3JLANCNFSM4WAAUUCA.

Fixes #372

Fixes #372

I find the new approach elegant, but I'm having second thoughts on not raising a TM1pyException when an operation fails 🤔
Normally in TM1py when any operation fails, a TM1pyException is raised.
This way failures can never go unnoticed and nothing fails silently. In the execute_with_return function we sort of moved away from that design pattern, but that was mostly because TI processes can be "halfway successful".
Now if a TM1py user uses the write function carelessly, and doesn't check explicitly for the success return value, fails may go unnoticed.
@rclapp
What do you think about my concerns?
Any third opinions on that matter?

I find the new approach elegant, but I'm having second thoughts on not raising a TM1pyException when an operation fails 🤔
Normally in TM1py when any operation fails, a TM1pyException is raised.
This way failures can never go unnoticed and nothing fails silently. In the execute_with_return function we sort of moved away from that design pattern, but that was mostly because TI processes can be "halfway successful".
Now if a TM1py user uses the write function carelessly, and doesn't check explicitly for the success return value, fails may go unnoticed.
@rclapp
What do you think about my concerns?
Any third opinions on that matter?

I find the new approach elegant, but I'm having second thoughts on not raising a TM1pyException when an operation fails 🤔
Normally in TM1py when any operation fails, a TM1pyException is raised.
This way failures can never go unnoticed and nothing fails silently. In the execute_with_return function we sort of moved away from that design pattern, but that was mostly because TI processes can be "halfway successful".
Now if a TM1py user uses the write function carelessly, and doesn't check explicitly for the success return value, fails may go unnoticed.
@rclapp
What do you think about my concerns?
Any third opinions on that matter?

I understand the concern, if a write fails then it should be an exception. The challenge is that TI based writes can partially fail. Maybe we need a TM1Py exception that matches TIs exit codes (Failed, Aborted, Ran with messages, Ran with Minor Errors, Complete). That would bring execute with return inline with everything else. We could also make Write Exceptions, That way we could return them and the developer could handle them.

MDX Write Success -> True,ChangeSetID
MDX Write Fail -> TM1py Exception with the REST Response Error
TI Write Success -> True,None
TI Write All Failed -> TM1pyTIAbortedException(include the status and list of logs)
TI Write Some Processes Failed -> TM1pyTIWriteIncompleteException (Status of failed writes and the logs)
TI Write Some/All Processes had Minor Errors or Messages ->TM1pyTIWriteIncompleteException (Status of failed writes and the logs)

I find the new approach elegant, but I'm having second thoughts on not raising a TM1pyException when an operation fails 🤔
Normally in TM1py when any operation fails, a TM1pyException is raised.
This way failures can never go unnoticed and nothing fails silently. In the execute_with_return function we sort of moved away from that design pattern, but that was mostly because TI processes can be "halfway successful".
Now if a TM1py user uses the write function carelessly, and doesn't check explicitly for the success return value, fails may go unnoticed.
@rclapp
What do you think about my concerns?
Any third opinions on that matter?

I understand the concern, if a write fails then it should be an exception. The challenge is that TI based writes can partially fail. Maybe we need a TM1Py exception that matches TIs exit codes (Failed, Aborted, Ran with messages, Ran with Minor Errors, Complete). That would bring execute with return inline with everything else. We could also make Write Exceptions, That way we could return them and the developer could handle them.

MDX Write Success -> True,ChangeSetID
MDX Write Fail -> TM1py Exception with the REST Response Error
TI Write Success -> True,None
TI Write All Failed -> TM1pyTIAbortedException(include the status and list of logs)
TI Write Some Processes Failed -> TM1pyTIWriteIncompleteException (Status of failed writes and the logs)
TI Write Some/All Processes had Minor Errors or Messages ->TM1pyTIWriteIncompleteException (Status of failed writes and the logs)

I agree with your idea. Bring them up as exceptions sounds like a good approach. Especially for people not that familiar with tm1 it could be hard to tell the difference. Faced that with some colleagues from the sql department recently.

I agree with your idea. Bring them up as exceptions sounds like a good approach. Especially for people not that familiar with tm1 it could be hard to tell the difference. Faced that with some colleagues from the sql department recently.

I find the new approach elegant, but I'm having second thoughts on not raising a TM1pyException when an operation fails 🤔
Normally in TM1py when any operation fails, a TM1pyException is raised.
This way failures can never go unnoticed and nothing fails silently. In the execute_with_return function we sort of moved away from that design pattern, but that was mostly because TI processes can be "halfway successful".
Now if a TM1py user uses the write function carelessly, and doesn't check explicitly for the success return value, fails may go unnoticed.
@rclapp
What do you think about my concerns?
Any third opinions on that matter?

I understand the concern, if a write fails then it should be an exception. The challenge is that TI based writes can partially fail. Maybe we need a TM1Py exception that matches TIs exit codes (Failed, Aborted, Ran with messages, Ran with Minor Errors, Complete). That would bring execute with return inline with everything else. We could also make Write Exceptions, That way we could return them and the developer could handle them.

MDX Write Success -> True,ChangeSetID
MDX Write Fail -> TM1py Exception with the REST Response Error
TI Write Success -> True,None
TI Write All Failed -> TM1pyTIAbortedException(include the status and list of logs)
TI Write Some Processes Failed -> TM1pyTIWriteIncompleteException (Status of failed writes and the logs)
TI Write Some/All Processes had Minor Errors or Messages ->TM1pyTIWriteIncompleteException (Status of failed writes and the logs)

Yeah, we should define specific Exceptions for these partial successes as you said. I like this idea.
Can I support you with the implementation?

I find the new approach elegant, but I'm having second thoughts on not raising a TM1pyException when an operation fails 🤔
Normally in TM1py when any operation fails, a TM1pyException is raised.
This way failures can never go unnoticed and nothing fails silently. In the execute_with_return function we sort of moved away from that design pattern, but that was mostly because TI processes can be "halfway successful".
Now if a TM1py user uses the write function carelessly, and doesn't check explicitly for the success return value, fails may go unnoticed.
@rclapp
What do you think about my concerns?
Any third opinions on that matter?

I understand the concern, if a write fails then it should be an exception. The challenge is that TI based writes can partially fail. Maybe we need a TM1Py exception that matches TIs exit codes (Failed, Aborted, Ran with messages, Ran with Minor Errors, Complete). That would bring execute with return inline with everything else. We could also make Write Exceptions, That way we could return them and the developer could handle them.

MDX Write Success -> True,ChangeSetID
MDX Write Fail -> TM1py Exception with the REST Response Error
TI Write Success -> True,None
TI Write All Failed -> TM1pyTIAbortedException(include the status and list of logs)
TI Write Some Processes Failed -> TM1pyTIWriteIncompleteException (Status of failed writes and the logs)
TI Write Some/All Processes had Minor Errors or Messages ->TM1pyTIWriteIncompleteException (Status of failed writes and the logs)

Yeah, we should define specific Exceptions for these partial successes as you said. I like this idea.
Can I support you with the implementation?

I find the new approach elegant, but I'm having second thoughts on not raising a TM1pyException when an operation fails 🤔
Normally in TM1py when any operation fails, a TM1pyException is raised.
This way failures can never go unnoticed and nothing fails silently. In the execute_with_return function we sort of moved away from that design pattern, but that was mostly because TI processes can be "halfway successful".
Now if a TM1py user uses the write function carelessly, and doesn't check explicitly for the success return value, fails may go unnoticed.
@rclapp
What do you think about my concerns?
Any third opinions on that matter?

I understand the concern, if a write fails then it should be an exception. The challenge is that TI based writes can partially fail. Maybe we need a TM1Py exception that matches TIs exit codes (Failed, Aborted, Ran with messages, Ran with Minor Errors, Complete). That would bring execute with return inline with everything else. We could also make Write Exceptions, That way we could return them and the developer could handle them.

MDX Write Success -> True,ChangeSetID
MDX Write Fail -> TM1py Exception with the REST Response Error
TI Write Success -> True,None
TI Write All Failed -> TM1pyTIAbortedException(include the status and list of logs)
TI Write Some Processes Failed -> TM1pyTIWriteIncompleteException (Status of failed writes and the logs)
TI Write Some/All Processes had Minor Errors or Messages ->TM1pyTIWriteIncompleteException (Status of failed writes and the logs)

Yeah, we should define specific Exceptions for these partial successes as you said. I like this idea.
Can I support you with the implementation?

I find the new approach elegant, but I'm having second thoughts on not raising a TM1pyException when an operation fails 🤔
Normally in TM1py when any operation fails, a TM1pyException is raised.
This way failures can never go unnoticed and nothing fails silently. In the execute_with_return function we sort of moved away from that design pattern, but that was mostly because TI processes can be "halfway successful".
Now if a TM1py user uses the write function carelessly, and doesn't check explicitly for the success return value, fails may go unnoticed.
@rclapp
What do you think about my concerns?
Any third opinions on that matter?

I understand the concern, if a write fails then it should be an exception. The challenge is that TI based writes can partially fail. Maybe we need a TM1Py exception that matches TIs exit codes (Failed, Aborted, Ran with messages, Ran with Minor Errors, Complete). That would bring execute with return inline with everything else. We could also make Write Exceptions, That way we could return them and the developer could handle them.

MDX Write Success -> True,ChangeSetID
MDX Write Fail -> TM1py Exception with the REST Response Error
TI Write Success -> True,None
TI Write All Failed -> TM1pyTIAbortedException(include the status and list of logs)
TI Write Some Processes Failed -> TM1pyTIWriteIncompleteException (Status of failed writes and the logs)
TI Write Some/All Processes had Minor Errors or Messages ->TM1pyTIWriteIncompleteException (Status of failed writes and the logs)

Yeah, we should define specific Exceptions for these partial successes as you said. I like this idea.
Can I support you with the implementation?

Yes please, more hands will go faster
Sent from my mobile phone
On Jan 14, 2021 4:14 AM, Marius Wirtz<EMAIL_ADDRESS>wrote:
I find the new approach elegant, but I'm having second thoughts on not raising a TM1pyException when an operation fails ?
Normally in TM1py when any operation fails, a TM1pyException is raised.
This way failures can never go unnoticed and nothing fails silently. In the execute_with_return function we sort of moved away from that design pattern, but that was mostly because TI processes can be "halfway successful".
Now if a TM1py user uses the write function carelessly, and doesn't check explicitly for the success return value, fails may go unnoticed.
@rclapphttps://github.com/rclapp
What do you think about my concerns?
Any third opinions on that matter?
I understand the concern, if a write fails then it should be an exception. The challenge is that TI based writes can partially fail. Maybe we need a TM1Py exception that matches TIs exit codes (Failed, Aborted, Ran with messages, Ran with Minor Errors, Complete). That would bring execute with return inline with everything else. We could also make Write Exceptions, That way we could return them and the developer could handle them.

MDX Write Success -> True,ChangeSetID
MDX Write Fail -> TM1py Exception with the REST Response Error
TI Write Success -> True,None
TI Write All Failed -> TM1pyTIAbortedException(include the status and list of logs)
TI Write Some Processes Failed -> TM1pyTIWriteIncompleteException (Status of failed writes and the logs)
TI Write Some/All Processes had Minor Errors or Messages ->TM1pyTIWriteIncompleteException (Status of failed writes and the logs)

Yeah, we should define specific Exceptions for these partial successes as you said. I like this idea.
Can I support you with the implementation?

You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/cubewise-code/tm1py/pull/454#issuecomment-760158425, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AEK7GZTW3AIO7H2SPUNTTHTSZ3NV5ANCNFSM4WAAUUCA.

Yes please, more hands will go faster
Sent from my mobile phone
On Jan 14, 2021 4:14 AM, Marius Wirtz<EMAIL_ADDRESS>wrote:
I find the new approach elegant, but I'm having second thoughts on not raising a TM1pyException when an operation fails ?
Normally in TM1py when any operation fails, a TM1pyException is raised.
This way failures can never go unnoticed and nothing fails silently. In the execute_with_return function we sort of moved away from that design pattern, but that was mostly because TI processes can be "halfway successful".
Now if a TM1py user uses the write function carelessly, and doesn't check explicitly for the success return value, fails may go unnoticed.
@rclapphttps://github.com/rclapp
What do you think about my concerns?
Any third opinions on that matter?
I understand the concern, if a write fails then it should be an exception. The challenge is that TI based writes can partially fail. Maybe we need a TM1Py exception that matches TIs exit codes (Failed, Aborted, Ran with messages, Ran with Minor Errors, Complete). That would bring execute with return inline with everything else. We could also make Write Exceptions, That way we could return them and the developer could handle them.

MDX Write Success -> True,ChangeSetID
MDX Write Fail -> TM1py Exception with the REST Response Error
TI Write Success -> True,None
TI Write All Failed -> TM1pyTIAbortedException(include the status and list of logs)
TI Write Some Processes Failed -> TM1pyTIWriteIncompleteException (Status of failed writes and the logs)
TI Write Some/All Processes had Minor Errors or Messages ->TM1pyTIWriteIncompleteException (Status of failed writes and the logs)

Yeah, we should define specific Exceptions for these partial successes as you said. I like this idea.
Can I support you with the implementation?

You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/cubewise-code/tm1py/pull/454#issuecomment-760158425, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AEK7GZTW3AIO7H2SPUNTTHTSZ3NV5ANCNFSM4WAAUUCA.

Yes please, more hands will go faster

OK. I will get my hands dirty now :)

Yes please, more hands will go faster

OK. I will get my hands dirty now :)

Yes please, more hands will go faster

Based on this branch, I started working on raising dedicated exceptions. You can cherry-pick my commit and continue from there if you like 9ea56534b70067478c0bb61532e97ebc8cda36aa
Alternatively, I would try to add test cases and finished things up next week.

Yes please, more hands will go faster

Based on this branch, I started working on raising dedicated exceptions. You can cherry-pick my commit and continue from there if you like 9ea56534b70067478c0bb61532e97ebc8cda36aa
Alternatively, I would try to add test cases and finished things up next week.

@rclapp write_values supports the spreading shortcuts and the other write functions don't. Unfortunately, we can't deprecate it 😒

@rclapp write_values supports the spreading shortcuts and the other write functions don't. Unfortunately, we can't deprecate it 😒

closed in favor of #462

closed in favor of #462


PKG is not compiling referenced modules when babel-register is in use.

Hello,
I am trying to use babel-register with my current project, and when I reference an ES6-compliant module that should be transpiled by babel-register, instead PKG cannot generate the bytecode for said file and the resulting binary cannot find the referenced module.
index.js
'use strict'

require('babel-register')
new (require('./main.js').default)

main.js
'use strict'

class Main {
  constructor(){
    console.log("Hello, world!")
  }
}

export default Main

The output for the PKG command is as follows:
dankisk-arch ~/dev/seekrit % ./node_modules/.bin/pkg --targets latest-linux-x64 app/index.js
><EMAIL_ADDRESS>> Warning Failed to make bytecode latest-x64 for file /snapshot/seekrit/app/main.js
dankisk-arch ~/dev/seekrit %

What am I doing wrong here? My node version is the latest and so is PKG.

I'm using babel-register too.
For me I faced problem of "..." syntax, it caused pkg throw an error when it found "..." command
><EMAIL_ADDRESS>> Error! Unexpected token (25:84)
  /home/boshido/Sendit/sendit-2stage-api/app/apis/admin/admin-driver.flow.js

I have a similar issue. Here is the project I am trying to compile. It uses node-webgl to make the window. Runs fine locally, but I get this when I try to build:
><EMAIL_ADDRESS>build /Users/konsumer/Desktop/shadertoy
> rimraf shadertoy && pkg src/index.js --public -o shadertoy

><EMAIL_ADDRESS>> Targets not specified. Assuming:
  node8-macos-x64
> Warning Failed to make bytecode node8-x64 for file /snapshot/shadertoy/src/main.js
> Warning Failed to make bytecode node8-x64 for file /snapshot/shadertoy/src/ui.js
> Warning Failed to make bytecode node8-x64 for file /snapshot/shadertoy/src/Effect.js

I m facing similar issue?
Any updates on this?
I m trying with "pkg --target latest-linux-x64 app.js"

Warning Failed to make bytecode latest-x64 for file /snapshot/test/node_modules/safefs/es6/lib/safefs.js

Did you try to bundle all first with browserify like this ?
browserify myappindex.js --no-bundle-external  --no-builtins  -o bundle.js
pkg -t node8-linux -c pkg.json -o execfile bundle.js

I solved this by removing ~/.pkg-cache.
It seems some of the prebuilt binary are broken for some time.

Have you actually tried to build your app first?
If using Babel better transpile using babel app -d dist and then indicate entrypoint at /dist to the pkg, like pkg ./dist/index.js.


"olun" Solution

The word "olun" gives the following wrong solution:
o/SIFAT lU/IY_SIFAT_lU Un/IC_SAHIPLIK_SEN_(U)n
However, this type of solution is not given for "bulun".

This solution is probably shouldn't exist. I'll take care of this issue soon.


update return type of result when user stop the audio player

Update return type of data from native to flutter

Also please bump the version and update changelog mentioning minor internal restructure and mention breaking change of previous PR.


Issue while increasing the data size more than 495 Bytes for Best-effort stream

Hardware description: ESP32
RTOS: FreeRTOS
Installation type: micro_ros_setup
Version:  micro-ROS running on ROS2 Foxy

Hello
I am using best-effort stream communication for publisher and subscriber.
The publisher and subscriber are working fine for data upto 495 Bytes.
But after increasing the data over 495 Bytes, the publisher is not publishing the topic data (although it is showing the published topic name in ros2 topic list) and the subscriber is showing a serialization error as shown in the below picture.

app-colcon.meta

I am not able to understand the problem . It will be great if anyone can help me to figure out the problem.
Thank you very much!!

Hello @pablogs9 ,
I am struggling to increase the data length using Best-effort stream over 495 Bytes.  Is that a limit ? Or is there any way to increase the size?
Kindly give your suggestions.
Thank you so much.

Hi @SiddharthZokarkar,
In this case the transport used is custom, as the provided configurations (udp, serial, ...) are used only for linux builds.
Rebuild your micro-ROS library using the following configuration parameter: UCLIENT_PROFILE_CUSTOM_TRANSPORT

Hello @Acuadros95 ,
Thanks for the reply.  I am using inbuild Serial transport on a Linux system instead of a custom transport.
What is the procedure to increase the data size more than 495 Bytes?
I tried by changing   UCLIENT_SERIAL_TRANSPORT_MTU 4096  but it is not working.
Kindly guide me.
Thanks

I tried by changing UCLIENT_SERIAL_TRANSPORT_MTU 4096 but it is not working.

You need to use the UCLIENT_PROFILE_CUSTOM_TRANSPORT parameter instead of the Serial one.

Ok thank you so much!!


Pull lib from a different repository

Signed-off-by: Luiz Carvalho<EMAIL_ADDRESS>

The lib seems to be loaded properly, and make check-release works properly. However, I get some odd errors regarding missing test coverage.
This feels a bit awkward and I'm not sure if it's something we need right now.
It would be much better, of course, if there was built-in support in rego for sharing policies as dependencies, but it's not quite there (and may not get there for a while, see stagnated issue open-policy-agent/opa#3371 )
Thoughts?

Thoughts?

Not a fan of git submodules, though I think it can be made to work. What I think we want (in the long run) is a ec-sdk of sorts, i.e. a programming model and tooling around it. Perhaps the ec-sdk is best embedded in the ec-cli and from that point onward we use ec-cli in place of opa or conftest, with all of that would entail. An alternative might be to explore loading shared libraries into opa and conftest and ship the ec-sdk as one.

Not a fan of git submodules, though I think it can be made to work. What I think we want (in the long run) is a ec-sdk of sorts, i.e. a programming model and tooling around it. Perhaps the ec-sdk is best embedded in the ec-cli and from that point onward we use ec-cli in place of opa or conftest, with all of that would entail. An alternative might be to explore loading shared libraries into opa and conftest and ship the ec-sdk as one.

Good points here. I think you capture the main problem: neither opa nor conftest support external libraries. Although creating an sdk-like project would help address this, I'm hesitant to do so right now because:

We don't actually have a business requirement to do this.
Users don't actually need the libraries in this repo to create policies to work with the Enterprise Contract. We don't really have users yet so whether this would be helpful to users is not yet clear.
Splitting the code between two repos creates maintenance and development overhead. IMO this will hinder our ability to deliver.

I'll close this POC PR based on this. In the future, if we do have a requirement to create a shared library and there's still no answer from the opa community, the sdk approach should be investigated further.


Missing tags.scm abort execution of repo map

Hello, a great project, thanks!
Lots of things to learn.
I am trying to generate a repo map from a java project that contains some yaml, HTML files etc, that I would like to list in repo-map, but in case a matching tree-sitter-{lang}-tags.scm does not exist, pkg_resources.resource_filename throws KeyError which stops the execution.
The reason is that not all languages from grep-ast have their tags.scm,
I added a try/catch block and it works ok for me.
Not sure if that makes sense, or maybe a fallback tags.scm would be better.
WDYT?
       try:
            scm_fname = pkg_resources.resource_filename(
                __name__, os.path.join("queries", f"tree-sitter-{lang}-tags.scm")
            )
            # Continue with your code that uses scm_fname
        except KeyError:
            self.io.tool_output(f"The scm file for language '{lang}' does not exist.")
            return

Aider version latest - build from source
Model being used (only repo map)
Other switches or config settings that are active

Thanks for trying aider and filing this issue. I just pushed a fix for this corner case.
The change is available in the main branch. You can get it by installing the latest version from github:
python -m pip install --upgrade git+https://github.com/paul-gauthier/aider.git

If you have a chance to try it, let me know if it works better for you.


frecency-like for all commands

There has been tickets about frecency (https://github.com/nvim-telescope/telescope-frecency.nvim/) - like feature to sort entries by access usage in fzf-lua  but the  outcome was https://github.com/ibhagwan/fzf-lua/issues/748  that doesn't cover all commands (commits/files/buffers).
Now I've seen https://www.reddit.com/r/neovim/comments/17dn1be/implementing_mru_sorting_with_minipick_and_fzflua/ and I believe this approach could be used in fzf-lua for all commands without it being too complex ?

This relies on an external utility,fre, and is in fact quite simple to add but it does require a decent effort to add globally to all commands and has its own nuances and config and having to support issues with said external utility. Also, why fre, why not zoxide (just an example), or any other utility? You see where this going.
Given how easy this is to achieve with fzf_exec I don’t feel this needs be an official part of fzf-lua.


Component file naming conventions

I'm not sure that naming every component index.jsx is the best idea, curious to hear your rationale.
In some parts of the React community, the generally accepted naming convention for component files is ComponentName.jsx.
This also means you can keep different components that are composed to create a specific "element" in the same folder, while keeping a consistent naming convention (for example, you may put all the form controls in the form folder).
Tying into an issue I created about making the cards more flexible, this is how I would set up the component folders were this my own project:
Folder structure
react-toolbox
--components
----card
------Card.jsx
------CardActions.jsx
------CardHeader.jsx
------CardMedia.jsx
------CardText.jsx
------CardTitle.jsx
------index.js

index.js contents
export Card from './Card.jsx';
export CardActions from './CardActions.jsx';
export CardHeader from './CardHeader.jsx';
export CardMedia from './CardMedia.jsx';
export CardText from './CardText.jsx';
export CardTitle from './CardTitle.jsx';

Usage
import React, { PropTypes } from 'react';
import {
  Card,
  CardActions,
  CardHeader,
  CardText
} from 'react-toolbox/components/card';

// your component class

Is this a file naming style that you dislike for any reason? I feel like it is much clearer than having every component in the library called index.jsx.

Make a lot of sense. I started creating the most basic components and they were composed by just one component file. In that first approach I've included the component directly in the index.jsx file. Then, when I get some bigger components I wasn't really following a convention and maybe I should.
Your proposal makes a lot of sense and it's going to be included in the next release.
Thanks for proposing it!! :smile:

@javivelasco awesome!
I've found with larger react projects, if you keep components in a flat structure it can become pretty unwieldy.
For example, it's nice to be able to look for all form controls in a form folder rather than a components folder with 100 other components.
Small problem
The only issue is providing backwards compatibility. You'll have to wait until the next major release as it is a breaking change. Thoughts?

Yes, in fact I'm going to create a major release next weekend with tons of changes :smile: I'm putting as much state as I can out of components to avoid methods (check pure-components branch). Maybe this would be a good opportunity to change the naming convention. What do you think?

@javivelasco Definitely like that approach!

Great, we'll go for it!

@javivelasco One thing, I'm 95% certain that the export style I used above requires the http://babeljs.io/docs/plugins/transform-export-extensions/ plugin. (It is also in the stage 1 presets).

Thanks for the advice! I guess that as soon as I start migrating I will figure that out :smile:

@javivelasco Is it best to wait to contribute new/changed components until after the first major release given the potential restructuring?

Yes,  we are releasing it during the weekend. For now changes are happening in pure-components  branch.  Any feedback or contribution there is appreciated!

I'd like to see the index.scss file renamed to match the name of the component as well. eg.
index.scss -> ComponentName.scss
This will ensure that when the classes are applied to the DOM, that the classname that appears in the DOM will actually match the Component it's being applied to. As it stands, "style__" is littered all over the DOM which is not very useful.
Great work with the library BTW, after looking at Material-UI for the last couple of weeks I can safely say I'm very impressed with the work you guys have all done :-)

Curious whether you'd be open to a PR on my suggestion on renaming the style.scss files to match their components?
It would be far more readable having Button-icon___34ags in the DOM compared to style-icon___34ags as it stands at the moment. Happy to open another issue if that helps?

Sorry @wrench7 !! I forgot to answer. Here is the thing: when we have a complex component with multiple subcomponents it doesn't make sense to have different style files for each one because they usually depends one on another and the imports can be made with composition purposes.
I think it is possible to use the component name which would be enought for most cases. In such scenario we would need to import the file specifying the extension too because otherwise there would be conflicts between Button.jsx, Button.scss.
I'm going to do some tests to have more semantic classes in the DOM. Feel free to open an issue to track the progress.

@javivelasco it could just be the name of the main component. A lot of people do do Button.scss. Having scss as an auto resolve module extension is strange -- most people i've seen using CSS modules don't do that as it's not as obvious at a glance.

Ok, I'll do some tests by naming the scss as the components and check how does it look like!

Thanks for clarifying some more @javivelasco.
I like @nathanmarks also explicitly declare that the styles files are .scss ones, which makes it easier at a glance to see amongst the other js/jsx ones (which don't use a suffix).
I'm still forming some thoughts on the structure of components like List and Card which have "sub-components" that rely on the base components stylesheet. I'm coming from a BEM/SUITs terminology and still see some benefit in adhering to those naming conventions when possible.

@wrench7 Which stylesheet are you referring to?

Sorry, I'm referring to the styles.scss that all of the Toolbox components import. If they were named in a similar fashion to the components they're styling, then the classes generated by CSS modules in the DOM would be eminently more readable.

Yeah, as long as the imports are added with the extension I think there would be on problem with it. But still, for subcomponents we shouldn't split the styles because we cannot import them to target the clases from one subcomponent style file to another. That's the only thing to take into account IMO

:+1:

This appears to have been fixed by https://github.com/react-toolbox/react-toolbox/commit/26d7b8a6e8260ff80df7825815be9a7911b61718


Clipboard content changes to Chinese characters

Running barrier 2.4.0 server on Gentoo KDE Plasma and Waynergy 855ea2a867db758b40dcba64a1f8ba102ae830c5 on Fedora 36 KDE Plasma, clipboard content copied on Gentoo changes to Chinese characters once I move the cursor from Gentoo to Fedora.

It does not happen when I copy text from Kate, so I initially suspected it's font related. However, the font I'm using in Konsole on Gentoo is Droid Sans Mono, which is also installed on the Fedora machine. Simply moving the cursor from the Gentoo host to the Fedora host and moving it back, is enough to alter the clipboard content.
The problem does not seem to occur when I'm copying text on the Fedora machine and paste it on the Gentoo machine.
This problem does not occur between the same Barrier server and a Barrier client on macOS, so I suspect this is a Waynergy issue.
Would appreciate any suggestions as right now I always have to copy text in app X, paste in Kate, copy again in Kate, then paste on the Fedora machine. Easy to forget and extremely frustrating when you do.

I apologize for the delay...
This seems to be a weird one that I can't quite reproduce at first pass but I'll have a go with Plasma and Konsole in the near future. In the meantime, is there any way you could past the proper text and then the garbled text here? I'd want to see if there is some trivial misinterpration, or something much more broken going on.

I apologize for the delay...

No worries, life happens to all of us ;-)

This seems to be a weird one that I can't quite reproduce at first pass but I'll have a go with Plasma and Konsole in the near future. In the meantime, is there any way you could past the proper text and then the garbled text here? I'd want to see if there is some trivial misinterpration, or something much more broken going on.

Copying foo or bar in Konsole on the Gentoo barrier server and pasting it on the Fedora running Waynergy client results in 猼慰瑳汹㵥昢湯⵴慦業祬洺湯獯慰散㸢猼慰瑳汹㵥挢汯牯⌺〰〰〰戻捡杫潲湵ⵤ潣潬㩲昣晦晦㭦㸢潦㱯猯慰㹮戼㹲⼼灳湡.
I accidentally Googled that recently, and found https://github.com/debauchee/barrier/issues/406 - it seems to be related to UTF-8.

That's actually extremely useful; it seems to mostly resemble an imprudent attempt at reading UTF-8 as if it were UTF-16 when playing with iconv. Not sure how lossless that is going to be round trip but I've at least got some ideas to play with, so thank you.

The solution seems to be to ignore anything but plain text to bypass the weird HTML conversion bugs as seen in the barrier issue. Does #39 fix it for you?

Does #39 fix it for you?

Unfortunately not.

Does #39 fix it for you?

It does. Few nits on the PR though.


Fix typo "UnsupporedError" to "UnsupportedError"

@unasuke  Grazie!
Would you also fix other UnsupporedError in attachment.rb ?
(We should add some tests...)

@ksss Fixed all typo, sorry. We need some test surely. I'll add that. So I change this pull-req to draft.

@ksss Test added! Could you review it again?

@unasuke GREAT! Thanks!


More info for unicornd troubleshooting?

Trying to start unicornd from a service, but it's dying with only the limited debug output from systemd at the bottom. Is there a better way to troubleshoot this? Pi 3 A+. Thx.
unocornd.service
[Unit]
Description=Unicorn HAT daemon

[Service]
ExecStart=/usr/sbin/unicornd

[Install]
WantedBy=multi-user.target

journalctl -u unicornd.service
Dec 22 21:12:47 cuepi systemd[1]: Started Unicorn HAT daemon.
Dec 22 21:12:47 cuepi systemd[1]: unicornd.service: Main process exited, code=exited, status=1/FAILURE
Dec 22 21:12:47 cuepi systemd[1]: unicornd.service: Unit entered failed state.
Dec 22 21:12:47 cuepi systemd[1]: unicornd.service: Failed with result 'exit-code'.

@Gadgetoid This is the issue the tweet was about. Any advice would be deeply appreciated. :)

Must be related to https://github.com/pimoroni/unicorn-hat/issues/131 for which I've pushed an, admittedly not very timely, fix.
The trouble is that unicornd uses a git submodule to include the rpi_ws281x library, so it doesn't get automatically updated as new versions of the Pi are released. I've bumped it to the latest version, which should include support up to the Pi 4.
Better debugging would require unicornd to report the error code it gets from rpi_ws281x. Possible, I believe, but needs some time and tlc to pull off.


Please update the named.ca file

Hello,
The root DNS file currently in the git repository is from 2008 (Feb 04, 2008)
The current one on internic is from June 26, 2024
I guess it should be updated
https://www.internic.net/domain/named.root

As mentioned in https://github.com/theforeman/puppet-dns/pull/257#pullrequestreview-2144972868, it's no longer used and should be removed.


perf(ast): reduce indirection in AST types

#3051  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @overlookmotel and the rest of your teammates on  Graphite


Get rid of duplicate animation in projects/01-matrix.yml

+1
On Mon, Aug 13, 2018 at 7:34 AM Tom Swirly<EMAIL_ADDRESS>wrote:

You can view, comment on, or merge this pull request online at:
https://github.com/ManiacalLabs/BiblioPixel/pull/917
Commit Summary

Get rid of duplicate animation in projects/01-matrix.yml

File Changes

M projects/01-matrix.yml
https://github.com/ManiacalLabs/BiblioPixel/pull/917/files#diff-0
(1)

Patch Links:

https://github.com/ManiacalLabs/BiblioPixel/pull/917.patch
https://github.com/ManiacalLabs/BiblioPixel/pull/917.diff

—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/ManiacalLabs/BiblioPixel/pull/917, or mute the thread
https://github.com/notifications/unsubscribe-auth/AA6a6gM70pabkZnOxgiW1FCVTQFHMVYJks5uQWQugaJpZM4V6V51
.


Compiled file does not change the file extension from .es6 to .js

I have a few files that I am trying to compile with babel in my project. Since I don't want all .js files to be processed through the babel compiler, I have used .es6 extension for the ones that I do want to be compiled. However, the output file does not have the .js extension. It keeps the .es6 extension. Is this supported? Thanks.

You can use other plugins for it.
gulp-extname for example: https://www.npmjs.com/package/gulp-extname

Would this be considered as a feature? I think that it is very useful to only provide files with a specific extension (.es6 for instance) for projects that have some files that need to be compiled by babel. As for the compiled file, it is a norm for transpilers to produce a .js file.

@nmehta6, I have a similar issue and I'm using gulp-babel to solve this.
Here's the issue and here's the solution.

@ericmdantas Thanks. I considered that approach. I was wondering if this renaming would be included in this project as a feature. For example, https://github.com/babel/babelify allows you to pass in an array of extensions and still compiles to .js.

@nmehta6, yeah I thought babel had something related to renaming the extensions too, but I couldn't find anything. Maybe it's still out there.
For now, that approach will do just what the feature would do - so I'm sticking to it for now.
But maybe @sebmck could give us a hint.

I'm not at all familiar with gulp so I I'm not sure on best practices.

Actually, it's not about gulp, it's about babel doing this "extension renaming" out of the box.
I couldn't find anything other than extension renaming for single files, like: "index.es6 to index.js".
If you have some folders, looks like there's no way to turn this:

├── lib0
│     ├── index0.es6
│     └── index1.es6
│
└── lib1
       ├── index3.es6
       └── index4.es6

Into this:

├── lib0
│     ├── index0.es6
│     ├── index1.es6
│     ├── index0.js
│     └── index1.js
│
└── lib1
       ├── index3.es6
       ├── index4.es6
       ├── index3.js
       └── index4.js

@sindresorhus, Thanks!
Just a question, can we make this configurable?
Like, tomorrow we could be using .esWhatever.

@ericmdantas It will convert any extension to .js. No need for it to be configurable.

@sindresorhus, alright, thanks!
Gonna try it later today.

Tested it and works great. Thanks!

@sindresorhus I have the opposite requirements - I don't want *.jsx files to be renamed to *.js.
Can you make this feature optional?

No, that's too much of an edge-case. Just use gulp-rename.

@sindresorhus Can't agree here. Every gulp plugin should do only one thing (I think it's your words 😉), so gulp-babel should transform code and gulp-rename - rename files. I was very surprised that my *.jsx files were renamed to *.js. Besides, I can't use gulp-rename after gulp-babel because some of my transformed files has js extension and some jsx and I just don't know, which of them were jsx before renaming.

Why do you need this?

@sindresorhus In my isomorphic project (node/webpack) I use babel/register in dev and compilation step for prod. I use jsx extentions for react components cause it's more informative and it's not js really.
So I have requires like require('./Button.jsx') in node scripts and this breaks after build step because it's Button.js now.

@sindresorhus So what do you think? IMHO it's much simpler and more obvious not to change extention in gulp-babel and use gulp-rename for this (one additional line of code) or make this behavior optional than change extention and try to change it back somehow. Something tells me that my use-case is not so rare ;)

Babel compiles your JSX, right? So when it comes out of this plugin it's no longer JSX, but plain JS, hence the extension change.

@sindresorhus Ok. For the others who'll face this problem, here is my solution:

@th0r I came up with a better solution for you. I made a gulp plugin that can revert to the previous path. So you can simplify it to:
gulp.task('babel', () => {
    return gulp
        .src('**/*.{js,jsx}')
        .pipe(sourcemaps.init())
        .pipe(require('gulp-babel')())
        .pipe(require('gulp-revert-path')())
        .pipe(sourcemaps.write())
        .pipe(gulp.dest('build'));
});

https://github.com/sindresorhus/gulp-revert-path

@th0r & @sindresorhus Thank you for the work on this.  I ran into the same issue, and this solution saved me a huge hassle and headache.

@sindresorhus the revert path is a great addition. I am getting Error: EMFILE, too many open files with the gulp approach vs. command line, but I do want my babel task in a proper build system.

@jeromecovington That error indicates that the Node process does not have permissions to open all of the files it wants to open at the same time, which is an operating system setting.  On Linux or a Mac, you can typically run ulimit -n 2048 to increase the limit of open files to 2048.  The default is often 256. Give that a shot and try again.

@th0r I think if you are using webpack you don't have to require('./button.jsx') but directly require('./button') by adding :
resolve: {
  extensions: ['', '.js', '.jsx']
}

to your webpack.config.js.
and for gulp-babel you just keep those .jsx files compiled to .js
on the server side, the same:
require('/path/to/button')

@egoist Thanks! That's exactly what I'm doing right now)

Happy to add some tips to the readme if someone cares enough to do a PR ;)

Does babel not rewrite the module ids without extensions anyway? At least by default? As option -  keepModuleIdExtensions: false

IMHO should be configurable: there is .mjs not only .js now...

IMHO should be configurable: there is .mjs not only .js now... @hzoo would you accept a PR?


Meetup plan -- Guangzhou soon

Just chatted with a few friends on WeChat, and concluded that we could host a meetup at Guangzhou.  Please respond below if you can give a talk or would like to participate. Also, suggest a time slot that works best for you. Or, comment with anything else.
PS: each talk can be 10-30mins, free style. Class room doesn't seem to be a problem for now. :-)

September is OK for me. I can give a talk on how to use ProjectQ and openfermion to solve some quantum chemistry problems.

Happy to help in anyway I can

Can I participate in this activity as a listener or volunteer ?  I'm a green hand on ProjectQ and HIQ. Thanks.

September is ok for me. I can just drop by, or talk about some general stuff about how to implement   easy-to-use variational quantum circuit using julia and Zygote .

It will be nice if the meetup will be at the weekend :)

Im not sure about Sep now. Other time?


import only Grid

Hello,
I've seen you are building very nice component which might help me a lot, but I can't understand why can't I import only Grid. When I try to do it, webpack build breaks saying this:
> ERROR in ./~/react-redux-grid/src/index.js
> You may need an appropriate loader to handle this file type.
> | import { combineReducers } from 'redux';
> |
> | import { ConnectedGrid } from './components/Grid.jsx';

I'm using react/redux architecture to build web app, is there a confilct between my store and your store. Can't get what's wrong even with simple example.

Can you post your webpack config? It looks like you're not able to build either a jsx file, or you're not using babel-loader with the appropriate plugins. These are the loaders for js/jsx used by grid:
  {
       test: /\.js$|\.jsx$/,
       loaders: ['react-hot', 'babel-loader'],
       exclude: /node_modules|\.json$/
   }

With the following babel-presets, which are in the .babelrc:
{
    "presets": [ "react", "es2015", "stage-0" ]
}

Thanks for the quick reply, here is my webpack configuration:
var path = require('path');

var webpack = require('webpack');

module.exports = {
	devtool: 'source-map',
	devServer: {
		contentBase: path.resolve('build'),
		historyApiFallback: true
	},
	entry: [
		'webpack-dev-server/client?http://<IP_ADDRESS>:8080',
		'webpack/hot/only-dev-server',
		'./src/app/app.jsx'
	],
	output: {
		path: path.resolve('build'),
		filename: 'bundle.js'
	},
	resolve: {
		modulesDirectories: ['node_modules', 'src'],
		root: path.resolve('src'),
		extensions: ['', '.js']
	},
	module: {
		loaders: [
			{
				test: /\.jsx?$/,
				exclude: /node_modules/,
				loaders: ['react-hot', 'babel?presets[]=react,presets[]=es2015']
			},
			{
				test: /\.css$/,
				exclude: /node_modules/,
				loader: "style-loader!css-loader"
			},
			{
				test: /\.scss$/,
				exclude: /node_modules/,
				loaders: ['style', 'css', 'sass']
			},
			{
				test: /\.(png|jpg)$/,
				loader: 'url-loader?limit=8192'
			}
		]
	},
	plugins: [
		new webpack.HotModuleReplacementPlugin(),
		new webpack.NoErrorsPlugin()
	]
};

I tried to add stage-0 for babel but it didn't help...

Thanks, couldn't do it with regex there is syntax error, but I just copied all the files from your library and run the app and saw that I'm missing stylus and font loader for webpack, that did the job...

I updated the regex, it wad missing the ! at the beginning of the pattern. I would try and do it this way -- so that you can continually npm install/update/etc
If you don't want the fonts, you can exclude them. See the readme for more information, or let me know if you have any questions.

Thanks a lot, regex now works perfectly :+1:
And stylus-loader needs to be put in webpack.config.js also