missing crafting ingredient

Issue Description:
I came across this error message
Could not find a crafting ingredient for 'GEAR_STONE in  'Gear, Stone'
What happens:
I tried to launch the game and this popped up
Steps to reproduce:

Install Ender I/O with the core
Install BetterwithMods and Buildcraft
Launch the game

Affected Versions (Do not use "latest"):

EnderIO: 1.12.2-5.0.41
EnderCore: 1.12.2-5.0.36
Minecraft: 1.12.2
Forge: 1.12.2-<IP_ADDRESS>70
SpongeForge? no
Optifine? no
Single Player

[10:55:08] [main/INFO] [enderio]: Enabled support for The One Probe
[10:55:08] [main/INFO] [enderio]: Processing IMC message recipe:xml from endercore
[10:55:08] [main/INFO] [enderio]: Processing IMC message recipe:xml from endercore
[10:55:09] [main/INFO] [enderio]: Reading user recipe file user_recipes.xml
[10:55:10] [main/ERROR] [enderio]: =======================================================================
[10:55:10] [main/ERROR] [enderio]: == ENDER IO FATAL RECIPE ERROR ==
[10:55:10] [main/ERROR] [enderio]: =======================================================================
[10:55:10] [main/ERROR] [enderio]: Cannot register recipes as configured. This means that either
[10:55:10] [main/ERROR] [enderio]: your custom recipe files have an error or another mod does bad
[10:55:10] [main/ERROR] [enderio]: things to vanilla items or the Ore Dictionary.
[10:55:10] [main/ERROR] [enderio]: =======================================================================
[10:55:10] [main/ERROR] [enderio]: == Bad file ==
[10:55:10] [main/ERROR] [enderio]: recipes/materials.xml
[10:55:10] [main/ERROR] [enderio]: =======================================================================
[10:55:10] [main/ERROR] [enderio]: == Error Message ==
[10:55:10] [main/ERROR] [enderio]: Could not find a crafting ingredient for 'GEAR_STONE in  'Gear, Stone'
[10:55:10] [main/ERROR] [enderio]: =======================================================================
[10:55:10] [main/ERROR] [enderio]:
[10:55:10] [main/ERROR] [enderio]: =======================================================================
[10:55:10] [main/ERROR] [enderio]: Note: If this is a modpack, report to the modpack author, not to
[10:55:10] [main/ERROR] [enderio]: the Ender IO team.
[10:55:10] [main/ERROR] [enderio]: =======================================================================
[10:55:10] [main/ERROR] [FML]: A custom exception was thrown by a mod, the game will display an error screen and halt.
latest.log

#4818 related?
Did you remove enderios stone gears

I left everything as default

Try updating enderio

Updated to latest version but still same problem. Could the problem be with Craftingtweaks?

Start the game with the additional parameter -DINDEV=1 and post the whole logfile (pastebin or sth like that).

I am unable to add the parameter, but i have added the log file

And update ender io and ender core

both are already latest version and still same problem

@chunkl, try deleting your config/enderio folder. Warning, that will reset every enderio settings you may have changed back to default.


Mounting Switch emuMMC on Windows

When mounting on Windows, you have to pass "\.\F:" instead of "F:" because of how Windows works with raw devices. Unfortunately this causes an issue where os.stat() does not like that type of file path. Looking into solutions right now

This also happens when the nand is mounted with memloader. You may also need to make sure you read and write in 0x200 sectors. I thought about creating a custom class to handle this.

First step: 0832882f5cbbdaeb8b10996db74753edeb765657


See donations (IDEA)

Seeing donations in chat and/or maybe in a seperate section above chat (as in (event) list)

Added in v1.5.2-beta


Crash on hopper when using splat+dot

I am trying to compile TTIR for H100 and getting the following failure (tested at head today, commit dced22c4b729127fb5fb85ddd4843fccb7df5105):
getElemsPerThread is not supported for shared layout
UNREACHABLE executed at lib/Dialect/TritonGPU/IR/Dialect.cpp:830!

It's hitting here: https://github.com/openai/triton/blob/main/lib/Dialect/TritonGPU/IR/Dialect.cpp#L830
Here is a small reproducer of the issue in TTIR:
SplatScalarDotHopper.mlir.txt
It crashes on the pass --convert-triton-gpu-to-llvm and I believe it's related to a change on hopper during the pass --tritongpu-accelerate-matmul=compute-capability=90.  I've also attached the TTGIR right before the pass to convert-triton-gpu-to-llvm:
SplatScalarDotHopper.ttgir.txt
Our working theory is that since splat is not implemented for a shared layout, there needs to be something that prevents the splat from being converted to a shared layout and instead does the splat with a blocked layout and then a convert_layout before the dot. Doing this manually in the ttgir does prevent the crash. And I think something similar might already be done for arith.extf since it always uses blocked and then has a convert_layout?
Any thoughts here?

I think your analysis is correct. Does this pass on A100? I wonder why IR we end up with and if we directly convert to dot_operand. We do have a bunch of similar decomposition happening here:
https://github.com/openai/triton/blob/main/lib/Conversion/TritonGPUToLLVM/TritonGPUToLLVMPass.cpp#L413
My intuition is that we should decompose into splat -> blocked then convert to shared (as you have pointed)

Yes it passes on A100s

Could you share the IR before convert to llvm to get an idea of how A100 handles it?

Yes the IR for H100 before --convert-triton-gpu-to-llvm is in my first comment, and here is the IR for A100 right before --convert-triton-gpu-to-llvm:
SplatScalarDotA100.ttgir.txt

It probably has to do with using shared memory operand for dot

On A100, we may initialize the operand of a dot op with dot operand layout directly.

right, looks like on A100 we can directly splat to dot_operand:
    %29 = tt.splat %25 : (f32) -> tensor<64x128xf32, #triton_gpu.dot_op<{opIdx = 1, parent = #mma, kWidth = 2}>>

The only solution I can think of is to decompose for the case where we splat to shared memory.


Update fieldset and label spacing

Update CSS fix for nhsuk-label and nhsuk-fieldset that normalises the spacing
Fix the alignment of first label on patient table filter
Consistent conditional label/fieldset size on session timeline page

Once merged should we have a look to see if there are other pages that need updating?


Add support for Elasticsearch with Bulk API and data stream

Summary of problem or feature request
We use the Monolog\Handler\ElasticsearchHandler to write log entries to Elasticsearch (Bulk API and data stream) with Monolog.
It is not possible for us to use Monolog ElasticsearchHandler with the Elasticsearch PHP client in order to write entries into Elasticsearch by using Bulk API and data stream.
The versions used are:

monolog/monolog 2.9.2
elasticsearch/elasticsearch 8.11.0

Code snippet of problem
Our Monolog setup looks like this:
$index = 'my-elasticsearch-index';
$formatter = new Monolog\Formatter\ElasticsearchFormatter($index, '_doc');

$host = 'https://<username>:<password>@hostname';
$client = Elastic\Elasticsearch\ClientBuilder::create()
    ->setHosts([$host])
    ->build();

$handler = new Monolog\Handler\ElasticsearchHandler($client, ['op_type' => 'create']);
$handler->setFormatter($formatter);

$logger = new Monolog\Logger('Logger name', [$handler]);
$logger->info('Some message');

The Elasticsearch documentation says the following about Bulk API and data stream in it:
To automatically create a data stream, Elasticsearch expects the following request:
PUT my-data-stream/_bulk
{ "create":{ } }
{ "@timestamp": "2099-05-06T16:21:15.000Z", "message": "<IP_ADDRESS> - - [06/May/2099:16:21:15 +0000] \"GET /images/ bg.jpg HTTP/1.0\" 200 24736" }
{ "create":{ } }
{ "@timestamp": "2099-05-06T16:25:42.000Z", "message": "<IP_ADDRESS> - - [06/May/2099:16:25:42 +0000] \"GET /favicon. ico HTTP/1.0\" 200 3638" }

In the current configuration, the request from above is sent as POST, which leads to an Elasticsearch error.
We can get around this by creating the data stream manually using an HttpClient that calls the API with the following request:
PUT _data_stream/my-data-stream

After that is is possible to add entries with the following request:
PUT my-data-stream/_bulk
{ "create":{ } }
{ "@timestamp": "2099-05-06T16:21:15.000Z", "message": "<IP_ADDRESS> - - [06/May/2099:16:21:15 +0000] \"GET /images/ bg.jpg HTTP/1.0\" 200 24736" }
{ "create":{ } }
{ "@timestamp": "2099-05-06T16:25:42.000Z", "message": "<IP_ADDRESS> - - [06/May/2099:16:25:42 +0000] \"GET /favicon. ico HTTP/1.0\" 200 3638" }

It doesn't matter whether we create the data stream automatically or create it manually beforehand.
When we want to add a log entry ($logger->info()), a parameter array is created in Monolog\Handler\ElasticsearchHandler->bulkSend(), which is not compatible with the Elasticsearch Bulk API and data stream.
In order for the function Elastic\Elasticsearch\Traits\ClientEndpointsTrait->bulk() to create a request that is accepted by Elasticsearch, it needs some changes in Monolog\Handler\ElasticsearchHandler->bulkSend(). We managed this by adjusting bulkSend() as follows:
     protected function bulkSend(array $records): void
     {
         try {
             $params = [
                 'body' => [],
             ];

             foreach ($records as $record) {
                 if ($this->options['op_type'] === 'create') {
                     if (!isset($params['index'])) {
                         $params['index'] = $record['_index'];
                     }
                     $params['body'][] = ['create' => new \stdClass()];
                 } else {
                     $params['body'][] = [
                         'index' => $this->needsType ? [
                             '_index' => $record['_index'],
                             '_type' => $record['_type'],
                         ] : [
                             '_index' => $record['_index'],
                         ],
                     ];
                 }

                 unset($record['_index'], $record['_type']);

                 $params['body'][] = $record;
             }

             /** @var Elasticsearch */
             $responses = $this->client->bulk($params);

             if ($responses['errors'] === true) {
                 throw $this->createExceptionFromResponses($responses);
             }
         } catch (Throwable $e) {
             if (! $this->options['ignore_error']) {
                 throw new RuntimeException('Error sending messages to Elasticsearch', 0, $e);
             }
         }
     }

I'm not sure if that's the correct place and if it has any side effects to other Monolog-Elasticsearch-setups. It also seems to be necessary to make certain adjustments to the Elasticsearch PHP client. More on this is below. Therefore I didn't create a pull-request.
The Elastic\Elasticsearch\Traits\ClientEndpointsTrait->bulk() creates the following POST request, which according to the documentation should be PUT, but it still works:
POST my-data-stream/_bulk
{ "create":{ } }
{ "@timestamp": "2099-05-06T16:21:15.000Z", "message": "<IP_ADDRESS> - - [06/May/2099:16:21:15 +0000] \"GET /images/ bg.jpg HTTP/1.0\" 200 24736" }
{ "create":{ } }
{ "@timestamp": "2099-05-06T16:25:42.000Z", "message": "<IP_ADDRESS> - - [06/May/2099:16:25:42 +0000] \"GET /favicon. ico HTTP/1.0\" 200 3638" }

The Elasticsearch PHP client should also be adapted to create a PUT request for Bulk API with data stream.
I've created a ticket 1389 to address the issue on the Elasticsearch PHP client side.
It would be very desirable if both packages support the Elasticsearch Bulk API with data stream.
System details

Operating System: Ubuntu 20.04.6 LTS or debian:11-slim in docker
PHP Version: 8.1
ES-PHP client version: 8.11.0
Elasticsearch version: 8.11.3

The issue was the used Monolog version 2.9.2, it works with Monolog >=3.3.
The ticket can be closed.


[Bug] Exhentai chapter duplicate

Device information
App version: <IP_ADDRESS> (standard, ad82dc1c, 1)
Android version: 9 (SDK 28)
Android build ID: ONEPLUS A5010_43_190731
Device brand: OnePlus
Device manufacturer: OnePlus
Device name: OnePlus5T
Device model: ONEPLUS A5010
Device product name: OnePlus5T
An exhentai gallery in my library has duplicate chapters, and I can infinitely scroll the last chapter into itself

Perhaps this is due to restoring the same backup twice, but I do not see this issue in other galleries, so I am unsure on what the actual root cause is

Also, fix your actions

🤷♂
You will likely have to remove that manga from library and clear the db in advanced settings, it will remove history and chapters from manga not in library

Technically fixed for the next release, it wont cause you reading errors any more


No "add button" in Search & Pick

Description of the bug
I can neither select an item nor add it. I can search - and get a list... and I can even type in the exact name listed... but that does me no good. I have no way of doing anything.
Steps To Reproduce
Search n' Pick
I can't find items I know exist using the new menus.
If I get lucky and find one I do know - I can't add it because the add feature never appears.
Expected Behavior
I expected to be able to add to my character's inventory like I used to. I was forced to get a new Unit Mod Manager and the newest Toybox.. but it doesn't seem to work.
Log Files
No response
Save File
No response
Screenshots
No response
Settings
No response
Toybox Version
0ToyBox0 - Shodan unified edition-8-1-5-6-1689362684
Operating System
Windows
What game are you using Toybox on?
Pathfinder Wrath of the Righteous
Game Version
No response
Anything else?
No response

I finally looked through enough chat logs to figure out a course of action.
Apparently Ctrl-F10 will pop up the toybox screen. My screen is set to exclusive full screen. Toybox usually opens at start before login. The button for close was off screen, so I had to hit escape, login to my character, then there was no correct way back to Toybox.
If toybox DID come up, it was either because I had not logged in yet, and once logged in, couldn't get back or had exited accidentally in the background - so there was no character to add it to.
So I got it to work by a bunch of searches of people dealing with the same issues and what they discovered.
That being said - its a little difficult figuring what items are categorized by, but I have been able to make it work (thats on Owlcat/Paizo IMHO) finally, replacing missing items from an earlier bug. Just turned out to be more of an ordeal than wished, but I guess thats just the way the game was coded.
Get Outlook for Androidhttps://aka.ms/AAb9ysg

From: xADDBx @.>
Sent: Monday, September 4, 2023 4:24:04 PM
To: cabarius/ToyBox @.>
Cc: Sturmund-Drang @.>; Author @.>
Subject: Re: [cabarius/ToyBox] No "add button" in Search & Pick (Issue #1035)
Logs, Screenshots, What items, ...?
—
Reply to this email directly, view it on GitHubhttps://github.com/cabarius/ToyBox/issues/1035#issuecomment-1705762485, or unsubscribehttps://github.com/notifications/unsubscribe-auth/BCLDWUL56KYNHW7WWUVWHB3XYZPJJANCNFSM6AAAAAA4K2SPX4.
You are receiving this because you authored the thread.Message ID: @.***>


Arithmetic

alaSQL must be able to understand that a statement like
select + -1

is the same as
select -1

as dynamic combination of sql based on calculated values can create situations like this.

Also statements as
SELECT 70 * + 1

should be valid, returning same result as
SELECT 70 * 1

Same way statements like
SELECT + col1 + 4 FROM t1

and
SELECT - col1 + 4 FROM t1

and
SELECT col1 - + - col0 FROM t1

and
SELECT col1 * + col2 FROM t1

and
SELECT DISTINCT + col1 * + 5 FROM t1

and
SELECT + 36 * + ( + 16 )

should be valid to complly with standart SQL

I will check the unary plus operator (now it works only with unary minus). Thank you!

Now it works. See test247. Thank you!

Great !!!


possible lo-fi solution to ended/replay (incomplete)

Released a first-pass fix for this that you can assess.


bug: returndatasize after successful create

What command(s) is the bug in?
No response
Describe the bug
in EIP, it is said "CREATE and CREATE2 are considered to return the empty buffer in the success case and the failure data in the failure case.". I think it is inconsistent with current code:
https://github.com/privacy-scaling-explorations/zkevm-circuits/blob/65577a99d042c326cfb9ba5131d804805d504b0f/bus-mapping/src/circuit_input_builder/input_state_ref.rs#L859
Concrete steps to reproduce the bug
No response

EIP 211: https://eips.ethereum.org/EIPS/eip-211

fixed


Update dependencies, plugins, gradle version and publishing process of artifacts

There are a lot of dependencies being used along with the plugins that need to be updated also,
Android Studio naming convention has changed and according to the Google docs current stable version is Arctic Fox | 2020.3.1
Why are we doing this for our customers?
This is internal cleanup of SDK dependencies, plugins, build process, and dependencies management.
Why is this needed?

For a multi-module SDK that we are planning to become, having a single source of truth for versions, dependencies and common configuration is very important.
In order to test the under development SDK, we need to support SNAPSHOT builds, which can be overridden and used to test.
Currently, we have to manually go to Nexus manager and release the builds, which needs to get automated.

How do we test that this change is successful?
Developers to test it and verify.
How are we building this?

Update Dependencies being used
Remove unused dependencies
Update AGP version
Update SDK Build Tools version
Update minSDK=21 (for now, it's a random number based on preliminary survey result but subject to change)
Add BuildSrc support and move all dependencies in there.
Add support of SNAPSHOT and its workflow
Use Nexus plugin to automate releasing of artifacts.

:tada: This issue has been resolved in version 1.0.0-beta.1 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:

:tada: This issue has been resolved in version 1.0.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Unrecognised font family 'Ionicons'

[x] I have reviewed the documentation
[x] I have searched existing issues
[x] I am using the latest React Native version

Environment

Environment:
OS: macOS High Sierra 10.13.4
Node: 6.11.5
Yarn: 0.27.5
npm: 3.10.10
Watchman: 4.9.0
Xcode: Xcode 9.1 Build version 9B55
Android Studio: Not Found
Packages: (wanted => installed)
react: 16.3.1 => 16.3.1
react-native: 0.55.3 => 0.55.3
Steps to Reproduce

yarn add react-native-vector-icons
react-native link
import Ionicon from 'react-native-vector-icons/Ionicons'

<Ionicon
		style={styles.actionIcon}
		name="ios-headset-outline"
		color="white"
		size={50}
/>

Expected Behavior

No error should appear for fonts
Actual Behavior

Error thrown: Unrecognised font family 'Ionicons'

Solution: after a long wait for a response, this is what I tried my self and it worked!
For others who will land here with similar issues:
Run below command:
rm -rf ios/build
and then,
react-native run-ios

Closing due to @ghost account


[$1000] Invalid prop type console errors show in money request page

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Action Performed:

Login account A and invite B to any workspace
Login B on another device and request money on A's workspace
On A, open B's money request chat

Expected Result: No console errors show
Actual Result: Console errors show
Platforms: All
Version Number: v1.3.16-2
Issue reported by: @aimane-chnaif
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1684401039074339
https://github.com/Expensify/App/assets/10736861/98a3afcc-ab77-41be-a791-864d2d6a1295
View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~01c1b26430e873c12c
Upwork Job ID:<PHONE_NUMBER>874247680
Last Price Increase: 2023-05-18

Proposal
Please re-state the problem that we are trying to solve in this issue.
We have some console errors when we open an expense report with Pay with Expensify button.
What is the root cause of that problem?
The first one is the wrong type of nvp_lastPaymentMethod. The error says that it expects an object, but received an array. The expected type (object) is already correct, so we shouldn't change it to array. I guess it's a bad merge that makes the current nvp_lastPaymentMethod is an array. Re-login seems to solve the problem.
The second one is the wrong type of ref passed to withNavigationFallback, withNavigationFocus, and Button. It expects either function (which is a legacy way to get a ref) or an object with current property that expects the current contains either a React.Component instance or a function.
https://github.com/Expensify/App/blob/b51738279a4f11e5957c9595443c4dea303627ee/src/components/Button/index.js#L113-L114
However, the current property types fails the real type of the ref.
I tried to find the type of the component by log caretButton.current?.constructor.name and I got HTMLDivElement (we can use Element) in web and ReactNativeFiberHostComponent (can't access this one) in native.
What changes do you think we should make in order to solve the problem?

Re-login for the first issue.
For the second one, most of the solution I found recommend to change it to PropTypes.instanceOf(Element) we can change the type of the current property to object instead, so it will work in both web and native.
PropTypes.shape({current: PropTypes.object}).
we need to do the changes in these 3 components withNavigationFallback, withNavigationFocus, and Button

Thanks Rajat, I agree with your review. Let's figure it out in the PR.

PR awaiting @parasharrajat's final review

Offers sent to @aimane-chnaif, @bernhardoj, @parasharrajat in preparation for tomorrow's payment date, 6/1

Okay then. Please accept the offer whenever you're able Rajat and I'll complete the payment - everyone else is paid out and checklist done, no regression test.

paid


firebase_admob RewardedVideoAd is not working as expected

The RewardedVideoAd is not working properly. Just navigate to the Rewardtest page from the HomeTEst and wait till the ad loads. Go back and navigate again to the RewardTest page. The ad is not loaded or the listeners not called
class HomeTEst extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('Test'),
      ),
      body: Center(
        child: FlatButton(
            onPressed: () {
              Navigator.push(
                context,
                new MaterialPageRoute(builder: (context) => new RewardTest()),
              );
            },
            child: Text('Ad page')),
      ),
    );
  }
}

class RewardTest extends StatefulWidget {
  @override
  _MyHomePageState createState() => new _MyHomePageState();
}

class _MyHomePageState extends State<RewardTest> {
  bool _loadingInProgress;
  bool _isRewarded = false;
  static final MobileAdTargetingInfo targetingInfo = new MobileAdTargetingInfo(
    testDevices: null,
    keywords: <String>['flutter'],
    birthday: new DateTime.now(),
    childDirected: true,
  );

  @override
  void initState() {
    _loadingInProgress = true;
    FirebaseAdMob.instance.initialize(appId: FirebaseAdMob.testAppId);
    RewardedVideoAd.instance.listener =
        (RewardedVideoAdEvent event, {String rewardType, int rewardAmount}) {
      print("RewardedVideoAd event $event");
      if (event == RewardedVideoAdEvent.rewarded) {
        setState(() {
          _isRewarded = true;
        });
      } else if (event == RewardedVideoAdEvent.loaded) {
        setState(() {
          _loadingInProgress = false;
        });
      } else if (event == RewardedVideoAdEvent.leftApplication) {
      } else if (event == RewardedVideoAdEvent.failedToLoad) {
        setState(() {
          _loadingInProgress = false;
          _isRewarded = true;
        });
      }
    };
    RewardedVideoAd.instance.load(
        adUnitId: RewardedVideoAd.testAdUnitId, targetingInfo: targetingInfo);
    super.initState();
  }

  @override
  Widget build(BuildContext context) {
    if (_loadingInProgress) {
      return Scaffold(
        body: Center(
          child: CircularProgressIndicator(),
        ),
      );
    }
    var col = Column(
      crossAxisAlignment: CrossAxisAlignment.center,
      mainAxisAlignment: MainAxisAlignment.center,
      children: <Widget>[
        _isRewarded
            ? RaisedButton(
                onPressed: () => Navigator.pop(context),
                child: Text('Close'),
                elevation: 10.0,
                textColor: Colors.white,
                padding:
                    new EdgeInsets.symmetric(vertical: 12.0, horizontal: 5.0),
                splashColor: new Color(0xFF00FF00),
                shape: new RoundedRectangleBorder(
                    borderRadius: new BorderRadius.circular(10.0)),
              )
            : RaisedButton(
                child: const Text(
                  'Play Video',
                  style: TextStyle(fontSize: 18.0),
                ),
                onPressed: () {
                  RewardedVideoAd.instance.show();
                },
                elevation: 10.0,
                padding: new EdgeInsets.all(20.0),
                color: Colors.redAccent,
                textColor: Colors.white,
                shape: new RoundedRectangleBorder(
                    borderRadius: new BorderRadius.circular(10.0))),
      ],
    );
    return new Scaffold(
      appBar: new AppBar(
        title: new Text('Reward'),
      ),
      body: Center(
        child: col,
      ),
    );
  }
}

@shyjuzz
This issue has been moved to https://github.com/FirebaseExtended/flutterfire/issues/494. Any further collaboration will be done there.

Since firebase_admob issues require work on the Flutter side as well as the plugin side these issues will remain open here as well until resolved.

Closing, as firebase_admob is now deprecated.


problem in stalling HAXM

gentleman, Actually i am installing Android studio for flutter, so i have to install HAXM.
but there is some problem in installing it...
i am sending you pic please check it and help me as soon as possible.
i will be very thank full to you...

Please follow the instructions to enable Intel VT-x from BIOS and the steps to disable Hyper-V in Windows first and then try again. Feel free to let us know if you encounter any issues further. Thanks.

I will follow the instructions and I hope it will help me.
Thank you very much, I will let you know if I feel any other difficulty.
On Tue, 4 Feb 2020, 6:16 am Wenchao Wang<EMAIL_ADDRESS>wrote:

Please follow the instructions
https://github.com/intel/haxm/wiki/Installation-Instructions-on-Windows
to enable Intel VT-x from BIOS and the steps
https://github.com/intel/haxm/blob/master/docs/manual-windows.md to
disable Hyper-V in Windows first and then try again. Feel free to let us
know if you encounter any issues further. Thanks.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/intel/haxm/issues/262?email_source=notifications&email_token=AOOQBFE6P5UDQO2TSKTE3M3RBC6VHA5CNFSM4KPJQQ62YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEKV7ZHQ#issuecomment-581696670,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AOOQBFAN7THPCSFLUJTEPDDRBC6VHANCNFSM4KPJQQ6Q
.


Upgrade to jline3

This PR upgrades sbt to jline 3 primarily so that we can get better tab completions in the sbt shell:

We still need jline2 for the console task to work with most scala versions. This made the PR a bit bigger in terms of net lines than I would have liked because I had to leave in all of the old jline2 related stuff. JLine3 also has some strange quirks around creating terminals and the input streams that it consumed that required some unusual workarounds.
In addition to the improved tab completions. I also fixed a few other small ui issues. Now when a client connects to a loading server, they will see all of the log messages since the server started which is especially useful if the server failed to load due to a misconfigured build. I also improved the supershell logging so that it works more reliably across the full range of scenarios that I test.

Nice! Thanks for the contribution @eatkins.

The console task is slightly broken at the moment. Left arrow doesn't work correctly probably due to a jline2 vs jline3 interaction that I need to track down.


Display detailed weather information

Add actual temp, max temp, min temp, humidity, wind speed
Add icons corresponding to the weather code
Add sunrise and sunset

@Ahmed-Labs

I think once you're done with #40 you can take up this issue or someone else who is free can take this up


delete collection loader does not close on tx error

try to delete a non empty collection
you get a tx error
but the loader stays open

👋


[C++] Standardize aggregation column order

Describe the enhancement requested
Change aggregation column order to segment-keys then keys then aggregates.
Component(s)
C++

cc @westonpace @icexelloss

This is a dup of https://github.com/apache/arrow/issues/34908
I am in favor of using #34908 because it has a bit more explanation in it.

Duplicate of #34908


extend/ENV/shared: effective_arch as public API

[x] Have you followed the guidelines in our Contributing document?
[x] Have you checked to ensure there aren't other open Pull Requests for the same change?
[x] Have you added an explanation of what your changes do and why you'd like us to include them?
[ ] Have you written new tests for your changes? Here's an example.

[x] Have you successfully run brew typecheck with your changes locally?
[ ] Have you successfully run brew tests with your changes locally?

Opening this to discuss possibility of exposing effective_arch information.
Main reason is that we currently use Hardware.oldest_cpu in formulae but this may not be accurate if user wants to target different arch.
Would need some input if anything else needs to change to get this information available to be used by formulae that are not capable of relying on existing shim arch selection.

Thanks for the PR @cho-m!

Main reason is that we currently use Hardware.oldest_cpu in formulae but this may not be accurate if user wants to target different arch.

Can you elaborate on some formulae that might use that, preferably in homebrew-core?

Can you elaborate on some formulae that might use that, preferably in homebrew-core?

Probably every existing call to Hardware.oldest_cpu would be replaced with ENV.effective_arch, which will work better for from-source builds that typically use native CPU rather than oldest CPU.

Probably every existing call to Hardware.oldest_cpu would be replaced with ENV.effective_arch, which will work better for from-source builds that typically use native CPU rather than oldest CPU and aligns these references with what the shim does under the hood.

Ah, I thought it might be this. Note that we intentionally removed/changed this in the past so that from-source builds would more closely align with bottles because:

we don't support from-source builds so don't really want to provide incentives for people to use them e.g. better performance
we don't want to introduce potential e.g. compilation failures that only apply when building from source (an unsupported configuration) so better to do the same thing when bottling/not

It would probably be good to write this policy down somewhere, assuming we're agreed on sticking with it.

Can you elaborate on some formulae that might use that, preferably in homebrew-core?

I think zig-based formulae are the most common right now, e.g. ncdu https://github.com/Homebrew/homebrew-core/blob/master/Formula/n/ncdu.rb#L32-L37
    # Fix illegal instruction errors when using bottles on older CPUs.
    # https://github.com/Homebrew/homebrew-core/issues/92282
    cpu = case Hardware.oldest_cpu
    when :arm_vortex_tempest then "apple_m1" # See `zig targets`.
    else Hardware.oldest_cpu
    end

julia is another example - https://github.com/Homebrew/homebrew-core/blob/master/Formula/j/julia.rb#L93-L95
    # Set MARCH and JULIA_CPU_TARGET to ensure Julia works on machines we distribute to.
    # Values adapted from https://github.com/JuliaCI/julia-buildbot/blob/master/master/inventory.py
    args << "MARCH=#{Hardware.oldest_cpu}" if Hardware::CPU.intel?

Not sure on gmp usage. May need to check on what happens when native on Linux https://github.com/Homebrew/homebrew-core/blob/master/Formula/g/gmp.rb#L45-L49
    cpu = Hardware::CPU.arm? ? "aarch64" : Hardware.oldest_cpu
    if OS.mac?
      args << "--build=#{cpu}-apple-darwin#{OS.kernel_version.major}"
    else
      args << "--build=#{cpu}-linux-gnu"

openblas does target a CPU, but it also has ENV.runtime_cpu_detection so needs further details - https://github.com/Homebrew/homebrew-core/blob/master/Formula/o/openblas.rb#L39-L44
    ENV["TARGET"] = case Hardware.oldest_cpu
    when :arm_vortex_tempest
      "VORTEX"
    else
      Hardware.oldest_cpu.upcase.to_s
    end

As note, changes shouldn't impact Homebrew's bottling, but is mainly for users who want to prepare their own bottles perhaps optimized for different CPU. I think best for Linux users (given we only optimize for old Core2) or macOS Intel users (given we do not provide AVX due to Rosetta limitation).

I think zig-based formulae are the most common right now, e.g. ncdu https://github.com/Homebrew/homebrew-core/blob/master/Formula/n/ncdu.rb#L32-L37

Yeh, this seems like a good idea.

but is mainly for users who want to prepare their own bottles perhaps optimized for different CPU

I don't think this is a path we should be working at supporting better as we don't support it and bottle usage outside the Homebrew org is fairly minimal.

Note that we intentionally removed/changed this in the past so that from-source builds would more closely align with bottles

Sorry, I should have also clarified the native CPU logic is Linux-specific:
https://github.com/Homebrew/brew/blob/594ed2a91a3f351a99f8c69104bb308dcadd85eb/Library/Homebrew/extend/os/linux/extend/ENV/shared.rb#L6-L14

Sorry, I should have also clarified the native CPU logic is Linux-specific:

Hah, yes, I forgot about this compromise 😅

On macOS there's basically no difference between ENV.effective_arch and Hardware.oldest_cpu except for --bottle-arch which is only a concern for third-party taps.

Does this API handle --bottle-arch as expected? I guess given that's an officially supported option: I'm not inclined to ✅ this assuming it does.

Does this API handle --bottle-arch as expected?

Yes. ENV.effective_arch would return what you set --bottle-arch to.


Allow non-Unicode file names on Unix-like platforms

There are still issues on Windows, but hopefully fixing this issue on Unix-platforms-only is fine?

On Mac OS X:
stack backtrace:
   0: std::sys::unix::backtrace::tracing::imp::unwind_backtrace
             at src/libstd/sys/unix/backtrace/tracing/gcc_s.rs:39
   1: std::sys_common::backtrace::_print
             at src/libstd/sys_common/backtrace.rs:71
   2: std::panicking::default_hook::{{closure}}
             at src/libstd/sys_common/backtrace.rs:59
             at src/libstd/panicking.rs:197
   3: std::panicking::default_hook
             at src/libstd/panicking.rs:208
   4: <std::panicking::begin_panic::PanicPayload<A> as core::panic::BoxMeUp>::get
             at src/libstd/panicking.rs:474
   5: std::panicking::continue_panic_fmt
             at src/libstd/panicking.rs:381
   6: std::panicking::try::do_call
             at src/libstd/panicking.rs:308
   7: <T as core::any::Any>::type_id
             at src/libcore/panicking.rs:85
   8: core::result::unwrap_failed
             at /rustc/82e2f3ec25a316c7536c33a6b6704366b14cbf2a/src/libcore/macros.rs:16
   9: core::result::Result<T,E>::unwrap
             at /rustc/82e2f3ec25a316c7536c33a6b6704366b14cbf2a/src/libcore/result.rs:798
  10: rusqlite::test::test_invalid_unicode_file_names
             at src/lib.rs:958

Linux only ?
And I guess we should update db_filename accordingly.

Thanks for pointing it out. The test is making an assumption about a file system that isn't always true - in particular, it will break if temp directory uses HFS+ filesystem. I will make a change to a test to skip it if filesystem doesn't support filenames like this.

Note that you can also pass a URI filename when opening the file: https://www.sqlite.org/uri.html

I'm not sure what URI filenames have to do with anything.
Yes, SQLITE_OPEN_URI option exists. You can pass it to Connection::open_with_flags. This change shouldn't break it - &Path is a superset of &str, URLs as far Rust are concerned are valid Paths..

URI filenames are relevant because they should let you pass non-unicode characters in the path by percent-encoding them, no?

Actually, you're right, that doesn't help outside of unix.

Supporting unpaired surrogates on Windows is interesting. I may look into that later. One thing of note is that sqlite3_open16 converts UTF-16 into UTF-8, but I have no idea what it does with unpaired surrogates, may want to analyze that later.
There is no fully generic solution to supporting all file names on all operating systems. Rust only exposes native representations for Windows and Unix platforms.
Not that it really matters, because such files are unlikely to exist - this is an edge case that mostly doesn't matter, but may as well support it :).

Yes, I think it's worth fixing. I'll be using rusqlite in firefox soon and suspect it's possible that some poor user has weird characters in their profile path. That said, in practice this is probably not an issue for other reasons, so I'll defer to @gwenn's judgement here for now.

Supporting unpaired surrogates on Windows is interesting

It's more than unpaired surrogates you have to worry about, files on windows are allowed to be arbitrary bitpatterns of u16 -- not even remotely valid UTF16.
Quoting https://docs.microsoft.com/en-us/windows/win32/fileio/naming-a-file?redirectedfrom=MSDN, emphasis mine.

There is no need to perform any Unicode normalization on path and file name strings for use by the Windows file I/O API functions because the file system treats path and file names as an opaque sequence of WCHARs.

I don't think SQLite can open these paths? Not sure, it would work if it just passes the "UTF-16" (heavy air quotes) string directly to the OS and treating it as opaque....
That said, sqlite3_open16 doesn't take flags so I'm not sure we could use it.

It's more than unpaired surrogates you have to worry about, files on windows are allowed to be arbitrary bitpatterns of u16 -- not even remotely valid UTF16.

So it's just unpaired surrogates :). Other than surrogate codepoints, all 16-bit values are valid UTF-16 codepoints.

Ah, fair.


Populate @leather-wallet/ui

This PR introduces a set of simpler packages to @leather-wallet/ui to start with E2E integration to the extension.
I have excluded some components mentioned on the list here .
You can see the updated components in storybook in the mono-repo here:
https://github.com/leather-wallet/mono/assets/2938440/68f4d795-b2f4-476e-89fa-3b66fcbfe489

Please see comment here
TLDR:

I am introducing some simpler components at first to prove the concept
Integrating more complicated ones (e.g. Input and installing to the extension was causing it to crash)
I thought that the icons and some other components were working right away but I was fooled by the cache and need to do more work investigating the packaging


Tweak build, and extend API

This PR

adds a AsDisplayData interface that users can add to their classes, so that they are displayed as display data straightaway, without needing registration,
adds an override of Registration.find allowing one to specify a default displayer if no specific one is found (I intend to pass null here, to know if a class actually has a displayer or not - not sure it's fine to pass null to Registration.setDefault), and
tweaks a bit the build (add gradle wrapper and .gitignore).

ping @rgbkrk @rdblue

I'm assuming the AsDisplayData is intended to be used like IPython's display call? Might be good to show the usage in the README (unless there are other good doc forms for this).


Reorganise repository, add preprocessor

Precursor to #2. This simply:

Moves the existing nam files to a directory subset-inputs.
Adds a preprocessing Python script, which as the nam files have no magic commands, does nothing other than add a "generated" header to the input.
Checks in the output of the preprocessor to Lib/gfsubsets/data.

I wrote a script to compare the input and the outputs, and found that several of the output nam files are missing large chunks of codepoints compared to the input files, for example all of the CJK subsets seems to be missing a large number of codepoints. Could you take a look?

Here's the script I used:
#!/bin/bash
for f in subsets-input/*.nam; do
in=$(mktemp)
out=$(mktemp)
cat $f | grep -v -E "^[#]" | awk '{if ($1 != "") { print $1 };}' > $in
cat ./Lib/gfsubsets/data/$(basename $f) | grep -v -E "^[#]" | awk '{ if ($1 != "") {print $1};}' > $out
echo $f
diff -u $in $out
done

I think there may be something up with your script. For example, it reports:
subsets-input/arabic_unique-glyphs.nam
--- /var/folders/jp/4p0m9zvx2l739tdpflm38kv40000gn/T/tmp.PibM1g7lPY     2024-01-18 09:52:52
+++ /var/folders/jp/4p0m9zvx2l739tdpflm38kv40000gn/T/tmp.JfJSnO4q1Q     2024-01-18 09:52:52
@@ -1,3 +1,7 @@
+0x0000
+0x000D
+0x0020
+0x00A0
 0x0600
 0x0601
 0x0602
@@ -254,13 +258,6 @@
 0x06FD
 0x06FE
 0x06FF
-0x200C
-0x200D
-0x200E
-0x2010

i.e. that 200C, 200D, 200E and 2010 are missing from Lib/gfsubsets/data/arabic_unique-glyphs.nam. But they aren't:
$ grep 0x20 subsets-input/arabic_unique-glyphs.nam
0x200C # ZERO WIDTH NON-JOINER
0x200D # ZERO WIDTH JOINER
0x200E # LEFT-TO-RIGHT MARK
0x2010 # HYPHEN
0x2011 # NON-BREAKING HYPHEN
0x204F # REVERSED SEMICOLON

Hmmm, although there are some differences in Chinese. Investigating...

Fixed it; the way I was detecting unassigned codepoints was unreliable. Now the only differences is that some genuinely unassigned codepoints have been removed. Here's my comparison script:
#!/bin/bash
for input in subsets-input/*.nam; do
  output=./Lib/gfsubsets/data/$(basename $input)
  echo $input
  diff -u <(awk '{print $1}' $input | sort | grep '.' | grep -v '^#') <(awk '{print $1}' $output | sort | grep '.' | grep -v '^#')
done

Ok great, the diffs look good to me now.


Error setting minCameraOrbit

Describe the bug
The value of minCameraOrbit becomes HTML attribute max-camera-orbit in the output build. Line 285 in file html_builder.dart generates this error.
To reproduce
Steps to reproduce the behavior:

Set up ModelViewer with minCameraOrbit: "auto 89deg auto"
Build for web or Android device
The Debug or Run tab will show that the generated model-viewer element has attribute ' max-camera-orbit="auto 89deg auto" ' instead of ' min-camera-orbit="auto 89deg auto" ', and in the running web app DevTools shows the same attribute

Expected behavior
If one sets up ModelViewer with minCameraOrbit: "auto 89deg auto" then the generated model-viewer element should contain attribute ' min-camera-orbit="auto 89deg auto" '

Thank You! #41 should fix this issue.


onPinchEnd fired twice when pinching out

Expected behavior: when I pinch out and release, onPinchEnd is fired once
Actual behavior: when I pinch out and release, onPinchEnd is fired twice:

My code:
const onPinchEnd = useCallback((state) => {
    console.log('onPinchEnd')
    console.log(JSON.parse(JSON.stringify(state)))
  }, [])

  const bindPinchGesture = useGesture({ onPinchEnd }, {
    domTarget: canvasContainerRef
  })

And in my render function:
      <CanvasContainer
        ref={canvasContainerRef}
        className="editor-canvas-container"
        {...bindPinchGesture()}
      >

react-use-gesture version: 7.0.5
browser: Safari 13
operating system: iOS 13.3
device: iPhone XS Max

Hi @tommedema thanks for reporting the issue. Would it be possible to set up a sandbox?

@dbismut I've been trying to do so the whole evening... but cannot even get it to log on pinch.
This is where I am now:
https://codesandbox.io/s/elegant-perlman-cdyhi
Open the result page in a new window, enable dev tools and mobile device mode, then use command/ctrl + shift to emulate a pinch event, or open the url on your mobile phone and try to pinch. It's not giving an alert or log statement for me.

@dbismut until we can get the sandbox to work I've created a video of my codebase and a demonstration of the issue here: https://app.usebubbles.com/02d6b5ec-8946-48ab-98c9-56a5b7e7bd42
as you can see it is worse than it just firing a second time, it actually fires every time you do a pointer down or click, after one pinch gesture has been made

Thanks for detailing the issue. Well actually I could have spotted the error from the code in you first message, I missed it sorry.
The problem is that you’re not using the library correctly using refs. When you use a ref, you shouldn’t spread the bind object onto a component, but rather:
React.useEffect(bind, [bind])

This is detailed in the docs. I’m not sure why you need to use a ref in your case.
Also, at this point there’s no real point in using useCallback for handlers, they will recompute in every render.

@dbismut I thought that was it too earlier today but already changed the code and the behavior is exactly the same:
  const bindPinchGesture = useGesture({ onPinchEnd }, { domTarget, enabled, eventOptions: { passive: false } })

  // See https://codesandbox.io/s/9o92o24wrr
  useEffect(bindPinchGesture as EffectCallback, [bindPinchGesture])

I tripple checked and made sure that the original binding was removed from the element and the behavior has not changed. For every click after the first pinchEnd, it keeps re-firing.

Tom, can you please update your sandbox then? I've made the test with Chrome on MacOS and everything seems to work normally.
https://9r49j.csb.app/
https://codesandbox.io/s/nifty-http-9r49j

@dbismut you've done it for me :) your codesandbox has the bug, I made a video of it:
https://app.usebubbles.com/d5c3a0df-ad3f-4cd2-9780-b4c553d050ac

@dbismut here's real life proof on how this is bugged on Android Chrome:
Video: https://drive.google.com/file/d/166_Je_o3AU5rady_V8pbnSZZPpblb6nI/view?usp=sharing
Sandbox: https://codesandbox.io/s/elegant-perlman-cdyhi
Device: whatsmybrowser.org/b/6XIM2

Hahaha, thanks so much for the details captured, I didn't know about use bubbles, looks like something I will use professionally!
I've just released 7.0.6, can you let me know if this fixes it for you?

Btw, doesn't seem like Chrome emulating two fingers touch works for me though!

@dbismut beautiful, glad we got this resolved quickly. Also appreciate that you added a unit test.
Glad to see Bubbles being useful to you. Feel free to send any feedback you may have to<EMAIL_ADDRESS>Re Chrome emulating pinch / two fingers touch: it should work, make sure you hold shift or command or ctrl while scrolling (depends on your operating system I believe).

Wow didn't know you were the author, congratulations. Per Chrome emulation: oh ok, you're talking about control + wheel, which is a way to emulating zooming with a pointer (ie not pinching since there's no angle). This works out of the box, no need to enter responsive mode :)


passes when image doesn't show

Challenge http://www.freecodecamp.com/challenges/waypoint-make-images-mobile-responsive has an issue. Please describe how to reproduce i

t, and include links to screenshots if possible.

Hi,
You forget the " " in the second image.

the > is missing but it passes. just an oversight, thanks though

ah yes true too hehe... you can close the issue


⚠ Bofrost.fr has degraded performance

In 64aeed2, Bofrost.fr (https://www.bofrost.fr) experienced degraded performance:

HTTP code: 200
Response time: 5187 ms

Resolved: Bofrost.fr performance has improved in 83f267f after 3 hours, 39 minutes.


docs: Add examples to local file lookup docs

🔗 Linked issue
Resolves #397
❓ Type of change

[X] 📖 Documentation (updates to the documentation or readme)
[ ] 🐞 Bug fix (a non-breaking change that fixes an issue)
[ ] 👌 Enhancement (improving an existing functionality)
[ ] ✨ New feature (a non-breaking change that adds functionality)
[ ] 🧹 Chore (updates to the build process or auxiliary tools and libraries)
[ ] ⚠ Breaking change (fix or feature that would cause existing functionality to change)

📚 Description
I found myself struggling to understand what my local filenames were supposed to be called for the module to properly read them. Hopefully this small tweak makes it a tad more obvious how to structure the filenames.

thank you!

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 83.85%. Comparing base (8d28f32) to head (d8b80b5).
Report is 1 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #398   +/-   ##
=======================================
  Coverage   83.85%   83.85%
=======================================
  Files          13       13
  Lines        1016     1016
  Branches      266      266
=======================================
  Hits          852      852
  Misses        158      158
  Partials        6        6

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

🚨 Try these New Features:

Flaky Tests Detection - Detect and resolve failed and flaky tests
JS Bundle Analysis - Avoid shipping oversized bundles


Extraction of time series representations after pre-training without fine-tuning on downstream task

Hi,
First of all, thank you for sharing your work its a very nice implementation.
I need to extract time series representations Z_t as mentioned in the unsupervised pre-training section of the paper.
Can you please advise me what is the best way to extract these representations after pre-training on a custom dataset?

Hello,
Thank you :)
I have described in some detail some good ways of doing it here. The description may look long, but I think only a few lines of code here and there need to be added. I can help if you have further questions. If you end up implementing it, please consider submitting a pull request :)

Thanks for the pointers to do it, you described it well on the shared link, I should have gone through all the issues before creating a new one. Sure I will give it a shot and create a pull request. I'm sorry for not looking into all the issues before creating one.
I have one question before I start working on the code: After doing the described changes, will I be able to extract embeddings after pre-training the model? Like in the test model! I want to use the model for the time series similarity comparison after generating embeddings for available samples and some future samples (one by one). So, if I want to generate embedding for just one sample (i have 3 or 4 samples each day). Will it be possible, or will it only generate embeddings during pretraining?
Thank you in advance for your time and effort.

No worries, it's hard to discover content in closed issues :)
So, if I understand what you want to do correctly, I think addressed it in my older post, but let me do it here again, more explicitly:
Yes, you could do this embedding extraction as a separate operation, i.e., not at the end of pre-training, but by loading an already stored model checkpoint through --load_model <ckpt_filename>. You could get the embeddings of whatever set of files you define as a "test set"  through the flag --test_pattern (e.g. use the file(s) containing your new and old data), simply by running the main.py script with the option --test_only testset. This would skip training, and instead only iterate over the "test set", doing evaluation of the loaded model and extracting the embeddings. The part of the main.py where this happens starts at line 184.
If you don't want to get evaluation metrics (or don't have labels for your dataset), and only want the embeddings (which I think is what you want), then you could add a command line argument --extract_embeddings_only in options.py, which instead of running lines 194-200 in main.py, it would run the embedding extraction code. So at line line 194 you could do:
if config['extract_embeddings_only']:
  embeddings_extractor = UnsupervisedRunner(model, loader, device, loss_module=None)
  with torch.no_grad():
      embeddings = embeddings_extractor.extract_embeddings()
  torch.save(embeddings, path)
  return
else:
<previous code code 194-200>

To implement this, I would replicate UnsupervisedRunner.evaluate(self, epoch_num=None, keep_all=True) into a new UnsupervisedRunner.extract_embeddings(self) member function , which would be identical but would not compute loss, metrics etc, instead only doing the feature extraction in the way I describe in my previous post.

Thank you so much for your detailed response. Today, I spent some time debugging to understand the code better and successfully extracted the embeddings based on your previous reply. You were right; it is pretty straightforward.
I am trying to optimize the code to make it quicker by doing the following thing:

Add extract_embeddings member function as suggested
Trying to avoid loading and processing of training data (I will pick normalizer from pickle using norm_from argument - should be available after pre-training anyways).
Save the model dimension parameters while pre-training into a JSON and load the model with these parameters later (avoid getting params from ).

The objective is to make embedding extraction as quick as possible. Initially, I might replicate the main.py functionality in another file to see what can be skipped then we integrate the functionality into the main.
Once I am done, I will create a pull request.

Sounds great, thanks!

Hi, I am done with the code modifications after testing on existing and custom data set.
Before making the pull request, I need your opinion about a feature I am thinking about adding. Currently, for a given input, the model outputs embedding of size "max_seq_len * d_model ".
I want to add a pooling feature with different modes (None (default embeddings), max, mean, mean_sqrt_len, last) so that we have an option of output as a single vector based on user choice. We can pass the mode to --extract_embeddings_only argument.
I want to confirm that in the case of single vector modes, the operation should be applied on axis 0, right? Giving us the final vector of size d_model (as this is the size of the embedding vector)!

Hi, thank you so much for working on this! It is a valuable contribution! I will review the pull request and merge your code as soon as I find some time.
Regarding your question:
The feature you suggest makes much sense; the aggregation operation is something many users may wish to do early on, before storing all embeddings (i.e. for every single step), e.g. to save space. The mode/option last might as well be first (as the model is bi-directional, at least when using the implemented training schemes). The reason first may be slightly more preferable is because a popular way of aggregating the sequence is including a special embedding at the beginning as a prefix (corresponding to the [CLS] token in NLP), and using the output representation of this prefix/embedding as the only embedding from which to predict the output, e.g. for classification. This mode of prediction has not been implemented yet, however, so this suggestion is purely for "future compatibility".
The axis along which the aggregation operation should be applied is the one corresponding to seq_length . This is indeed axis 0 if you are taking the embeddings from line 240, or axis 1 if you are taking them from line 242. I think that the latter (i.e. embeddings after the activation function) would be preferable, as these are the embeddings from which the final prediction originates.

Great, thanks; I will wait for your response.
Regarding extraction of different types of embeddings:
I will add the feature to local and create a pull request once you review the current pull request. Thanks for the recommendation of taking embeddings line 242. I think you are right its make more sense to take embedding after this line. Right now, I am taking embedding before this line, but I will update it in the next update.


Baseline S-expression parser

This PR is another step along the road to completing #17
Here we define the core Parser struct and it's main Parse method.  Most of the heavy lifting here is done by previous work on type and enforcement with the rule package, this help keep the core of the parser fairly simple (see Parser.parseExpression)
I've also defined ParserError to wrap and standardise errors of all knds that are intended to be shown the human (I am not a robot, I am a human.  Beeep.  :robot: )  submitting their code to be parsed.
Features to follow in additional PR(s):

Parse String, Integer and Float types.
homogeneous type enforcement and type promotion (i.e. if the contract says MANY NUMBERS, and one of those numbers is a float, then we should convert them all to float).
Warn the user about type promotions.

👍


Automatic deploy to heroku fails

A looong time ago, we did an automatic deployment pipeline to Heroku from github pushes.
It doesn't work at this moment, I think it would be a matter of looking what changes we need to do to deploy it there. Probably we would only need to deploy rdfshape-client to heroku and point to the rdfshape local server we already have.
It is a pity that it doesn't work, because some applications are still pointing to the heroku deployment...another possibility could be to just create a landing page redirecting from heroku to http://rdfshape.weso.es

Solved

Solved


Make 'Set Dhost Folder' optional

Please make Dhost set the folder step optional if the VSCode ${fileWorkspaceFolder} ( the current opened file's workspace folder) is already defined.
Testcase:

Open VSCode using a terminal with ' code . ' from a predefined project directory
Set Web3 API
Edit your site
Publish the site

Please make Dhost set the folder step optional if the VSCode ${fileWorkspaceFolder} ( the current opened file's workspace folder) is already defined.
Testcase:

Open VSCode using a terminal with ' code . ' from a predefined project directory
Set Web3 API
Edit your site
Publish the site

Hey @arky,
Thanks for raising these issues!
Fixes: v0.2.2
You can now test the latest version on VS Code.


Allow to specify kernel_name variable

Threadmill doesn't take python3 as default kernel (for the case you have JULIA notebooks). Since we want to have our notebooks clean for any user changes and from their kernels as well we will get empty kernel info in the .ipynb files.

I believe taht user needs to add escape charakters for quotes in the kernel_name parameter since it's inserted as a string. Something like this:
kernel_name: "\"python3\""


Automated cherry pick of #8218: webconsole: ssh: each argument on its own line

Cherry pick of #8218 on release/3.3.
#8218: webconsole: ssh: each argument on its own line

Codecov Report

Merging #8220 into release/3.3 will decrease coverage by 2.70%.
The diff coverage is 0.30%.

@@              Coverage Diff               @@
##           release/3.3   #8220      +/-   ##
==============================================
- Coverage         6.78%   4.08%   -2.71%
==============================================
  Files              676     281     -395
  Lines           118955   59396   -59559
==============================================
- Hits              8076    2427    -5649
+ Misses          110267   56776   -53491
+ Partials           612     193     -419

Flag
Coverage Δ

#aFlag
4.08% <0.30%> (-2.71%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

pkg/cloudcommon/notifyclient/notify.go
2.22% <0.00%> (-0.36%)
:arrow_down:

pkg/compute/models/buckets.go
1.10% <0.00%> (-0.07%)
:arrow_down:

pkg/compute/models/capabilities.go
0.00% <0.00%> (ø)

pkg/compute/models/cloudproviderregions.go
0.00% <0.00%> (-0.27%)
:arrow_down:

pkg/compute/models/cloudproviders.go
0.87% <0.00%> (+0.01%)
:arrow_up:

pkg/compute/models/cloudregions.go
1.57% <0.00%> (-0.05%)
:arrow_down:

pkg/compute/models/cloudsync.go
0.00% <0.00%> (ø)

pkg/compute/models/dbinstance_accounts.go
2.05% <0.00%> (-0.03%)
:arrow_down:

pkg/compute/models/dbinstance_backups.go
2.78% <0.00%> (-0.17%)
:arrow_down:

pkg/compute/models/dbinstance_databases.go
3.33% <0.00%> (-0.07%)
:arrow_down:

... and 708 more

Continue to review full report at Codecov.

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

/lgtm
/approve


More robust error handling in Rope

Right now, a lot of our Rope code is littered with panic!()s and .expect()s. This is fine for a first iteration, but we need to move toward more robust error handling. At the very least, we should replace as many panics as possible with Results.

We might want to look into using the brson/error-chain crate. I have no experience using this, but I hear it's good.
See also: http://brson.github.io/2016/11/30/starting-with-error-chain

Some questions:

what do libraries need to do to to support error-chain? is it only for executables?
can we support error-chain as an optional dependency in a library?


Cancel the impossible transitions along with transition approvals

Description:
When there more than one next state from the current state of the workflow and one of the transition approval is approved, django-river simply cancels all other peers and their future as well since they are impossible to reach from that moment on. It seems even though the transition approvals are canceled, their transitions still remain PENDING
Acceptance Criteria:

Cancel all impossible transitions as well.

This issue will be resolved by the commits referenced in this issue: https://github.com/javrasya/django-river/issues/188


Feature/deeplink improvements

ParsePlayUrl JS can support topics and event modules from the production and other Play environnements with the DEEP_LINK_ENVIRONMENTS environnement variable.
JS updated to version 19: scheme url now asked in parseForPlayApp() parameters.

@SebastienChauvin Travis is back.


Fix rollback from 0.11

[ ] CHANGELOG.md updated
[ ] Rebased/mergable
[ ] Tests pass
[ ] Sign CLA (if not already signed)

0.11 no longer uses some files from 0.10.  The code was a little
too aggressive and remove these files which would break rolling back
to 0.10 if necessary.  Since shards must be migrated to tsm before
upgrading to 0.11 and a user might not know they still have old shard
formats, they would not be able to revert back to 0.11 and migrate
them.
Also adds uptime stats to usage data.

LGTM


[ZEPPELIN-1421] Fix dead link in docs/README.md

What is this PR for?
There is a dead link in docs/README.md.
It should be https://zeppelin.apache.org/docs/latest/ not https://zeppelin.apache.org/docs/latest
What type of PR is it?
Bug Fix
What is the Jira issue?
ZEPPELIN-1421
How should this be tested?

Before https://zeppelin.apache.org/docs/latest
After https://zeppelin.apache.org/docs/latest/

Screenshots (if appropriate)
Questions:

Does the licenses files need update? no
Is there breaking changes for older versions? no
Does this needs documentation? no

LGTM. BTW, I found the docs of 0.7.0-SNAPSHOT is broken, is it a known issue ?
e.g.
https://zeppelin.apache.org/install/install.html

@zjffdu Ah it's wired. In 0.7.0-SNAPSHOT, all the link in the dropdown menu are broken. It should be https://zeppelin.apache.org/docs/0.7.0-SNAPSHOT/install/install.html not https://zeppelin.apache.org/install/install.html.

LGTM with the dead link in README.md
Also, shouldn't we need to fix the broken image in shell interpreter doc?

@kavinkumarks
The shell interpreter docs in github is just a source not a real docs page. The real one is deployed at https://zeppelin.apache.org/docs/0.7.0-SNAPSHOT/interpreter/shell.html.
The below tag is for the broken image.
<img src="{{BASE_PATH}}/assets/themes/zeppelin/img/docs-img/shell-example.png" />

Since it contains {{BASE_PATH}}, github can't recognize this variable. That's the reason why the image is broken. Zeppelin is using Jekyll to build the documentation site. (See here for more details). Only Jekyll can recognize the variable.
Just FYI, that kind of variables(e.g. BASE_PATH, ASSET_PATH) are defined in docs/_config.yml :)

@AhyoungRyu thanks for the information but we can use the path https://github.com/apache/zeppelin/blob/master/docs/assets/themes/zeppelin/img/docs-img/shell-example.png to access the image as used in other interpreters.There is no need to use BASE_PATH variable.What do you say?
Thanks,
Kavin
MailTo<EMAIL_ADDRESS>

@kavinkumarks Ah right. Although they are just source for the real documentation website, someone might be confused like you. So I checked all docs pages under /docs, some link and image path contains {{BASE_PATH}}. I removed them and changed to the actual path. Could you check again? :)

@AhyoungRyu the changes look good!
Thanks,
Kavin
MailTo<EMAIL_ADDRESS>

@zjffdu Just FYI

I found the docs of 0.7.0-SNAPSHOT is broken, is it a known issue ?

This issue was resolved today. docs/0.7.0-SNAPSHOT site works well like before :)
@kavinkumarks Thanks!
Merging to master if there is no further discussion

Thanks @AhyoungRyu

Tested, Merging it


This project is lacking a license

A OSS license would make it open source and would clarify the terms under which it can be used

Hey, thanks for reaching out! You're indeed correct.
I'll license this under the MIT license just now.

Also I'll be happy to know if you're using it for something cool!

Thank you. Right now I just plan to try to get my RPi4 working. Later it probably will be my smart-home hub running deconz https://github.com/maxhbr/myconfig/blob/master/modules/service.deconz.nix.

Sounds great! Feel free to reach out if you encounter any issue with this this repo, I'll be happy to help!

FYI: The PR 82718 on nixpkgs is already merged into master, see https://github.com/NixOS/nixpkgs/pull/82718. You might want to add a comment that APPLY_CPTOFS_PATCH: "y" can not be used together with NIXPKGS_BRANCH: "master"

Hey, sorry for getting back this late -- lots of stuff came through that really limited my possibility to look into other stuff. I'll add a note to the documentation and also try to make the script resillient so that it doesn't fail if the patch is already applied.
Thanks for spotting this!


sourcepath defaults - understand and correct if needed

These article suggest in part that -sourcepath should be blank in most cases. I need to delve in to this further in order to confirm what we should be doing.
http://blog.ltgt.net/most-build-tools-misuse-javac/
https://docs.gradle.org/2.4/release-notes#changes-to-default-value-for-java-compilation-sourcepath

Data point: Removing the directories of files even those explicitly passed to j2objc to be translated, when those files are split across multiple source set directories (ex. with dagger code or main/test code), results in class not found errors.  My belief (guess) is that the sourcepath is telling j2objc what the root of the directory is so that it can find where to append the package part of the path (otherwise how would it know which part of the path was package vs. just root directory?)


Edit statement on working hours in employee guide for clarity

Minor suggested change to wording. “You should, in general, complete your contracted work hours during typical working hours 8-6 so that you can interact with the lab members.”

Clearer, thanks!


Resume tenant deletion on attach

Tenant deletion needs to be resumed when such a tenant is attached to pageserver

Resolved by https://github.com/neondatabase/neon/pull/5039 (forgot to link it)

As the PR is merged, we can close this now.


Request support for array of class with array

What happened + What you expected to happen
I want to support something like
template<size_t out>
struct stat{
    std::array<int, out> sb;
    auto operator==(const stat& rhs) const {
        for (int i = 0; i < out; i++) {
            if (sb[i] != rhs.sb[i]) {
                return false;
            }
        }
        return true;
    }
    stat(){
        for (int i = 0; i < out; i++) {
            sb[i] = rand() % 100;
        }
    }
};

template <size_t in,size_t out>
struct person {
  int age;
  std::array<stat<out>, in>state ;
  std::string name;

  auto operator==(const person& rhs) const {
    for (int i = 0; i < in; i++) {
      printf("%d\n", state[i]);
      if (state[i] != rhs.state[i]) {
        return false;
      }
    }
    return age == rhs.age && name == rhs.name;
  }
};

It will be filtered out by line, and if I remove the line, the following checks will comply later for std::is_aggregate_v. But according to the fixed_size compile time definition, the array in the array class will be sized during compile time, you just need to make extra checks for if visit the member of the class with an array, if it's aggregate for every member in the struct, and make extra logic during generating visit_member function.
Reproduction way
just compile the above code in code
Anything else
If you think it's doable, we can make it together.
Are you willing to submit a PR?

[ ] Yes I am willing to submit a PR!

For now, the user-defined class should be aggregate. You need remove the constructor of struct stat.
template <size_t out>
struct stat1 {
  std::array<int, out> sb = init_sb();
  friend bool operator==(const stat1&, const stat1&) = default;
  static auto init_sb() {
    std::array<int, out> sb;
    for (int i = 0; i < out; i++) {
      sb[i] = rand() % 100;
    }
    return sb;
  }
};

template <size_t in, size_t out>
struct person1 {
  int age;
  std::array<stat1<out>, in> state;
  std::string name;
  friend bool operator==(const person1&, const person1&) = default;
};

My stupid, thx

The non-aggregate user-defined class will be supported later. But you need add some macro for reflection.

Fixed by #279. Now we support non-aggregate type.
But you need add some reflection info manually :
template <size_t out>
constexpr std::size_t struct_pack::members_count<stat1<out>> = 1;

template <size_t in, size_t out>
constexpr std::size_t struct_pack::members_count<person1<in, out>> = 3;

Fixed by #279. Now we support non-aggregate type. But you need add some reflection info manually :
template <size_t out>
constexpr std::size_t struct_pack::members_count<stat1<out>> = 1;

template <size_t in, size_t out>
constexpr std::size_t struct_pack::members_count<person1<in, out>> = 3;

#include <iostream>

namespace struct_pack {
template <typename T>
constexpr size_t members_count = 2023;
} // namespace struct_pack

namespace ns {
struct Foo {};

// ERROR: PLACE IN NS !!!
template <>
constexpr size_t struct_pack::members_count<Foo> = 23;

} // namespace ns

int main() {
    std::cout << struct_pack::members_count<ns::Foo> << std::endl;
}

not a good idea, because it couldn't place members_count in user namespace, and it will intrude into struct_pack.


feat!: add ignorePadding option to ParseShares

Closes https://github.com/celestiaorg/celestia-app/issues/1649

Codecov Report

Merging #1662 (f18d9f0) into main (f31ee58) will increase coverage by 0.10%.
The diff coverage is 66.66%.

@@            Coverage Diff             @@
##             main    #1662      +/-   ##
==========================================
+ Coverage   51.56%   51.66%   +0.10%
==========================================
  Files          95       95
  Lines        5954     5979      +25
==========================================
+ Hits         3070     3089      +19
- Misses       2570     2574       +4
- Partials      314      316       +2

Impacted Files
Coverage Δ

pkg/shares/share_sequence.go
75.00% <62.50%> (-2.78%)
:arrow_down:

pkg/shares/parse.go
76.19% <72.72%> (+3.96%)
:arrow_up:

... and 1 file with indirect coverage changes


Item Builder sizing issues

http://imgur.com/a/MnkWc
Sizing issue causing the user to not be able to slide the slider that modifies the value of the stat to its rightmost position. Only able to slide about 1/2-2/3 of the way.

I am aware that the items tab is too wide for lower resolutions. There should be a fix coming very soon.
Sorry about that, and thanks for the report!

Ok resolved this now. If the items tab won't fit on your screen there'll be a scroll bar shown.


"Error parsing flag -x"

Describe the bug
"-x" option is not recognized
To Reproduce
From the changelog of 0.9.0
cjxl can now be used to explicitly add/update/strip Exif/XMP/JUMBF metadata using the decoder-hints syntax, e.g. cjxl input.ppm -x exif=input.exif output.jxl
Expected behavior
it does not seem to work
Environment

OS: Windows, Powershell

Thanks for your report!
I cannot reproduce the bug you are describing; perhaps you could provide an example of an exif file where this fails?!

I'm trying to convert JPG into JXL without losing EXIF data. Can I do that with this command or I have to have a separate EXIF file that will be imported into JXL?


Concern Regarding Possible License Violation and Non-Compliant Distribution

Report malware or abuse
Please fill out the form to report malware or abuse in a package to the PlatformIO team.
The PlatformIO team will review the report and act accordingly. In cases where malware or abuse is confirmed, the package will be removed and the namespace will be blocked.
Sensitive information should be sent to<EMAIL_ADDRESS>included this issue link.
Please note that this report goes to the PlatformIO team for triage, not the package maintainer. To report bugs or vulnerabilities in a package please contact the maintainer directly.
Package information

Package name: ESP-DASH
Package version: Staring from version 4.0.0
Package link: https://registry.platformio.org/libraries/ayushsharma82/ESP-DASH

Description of vulnerability
I am writing to report a potential violation of the GNU General Public License v3.0 (GPL-3.0) in the project "ESP-DASH" by Ayush Sharma, which is hosted on your PlatformIO Registry.
Violation Description:
The project includes a file named dash_webpage.cpp which is distributed as a binary blob without providing the corresponding source code, as required by the GPL-3.0 license. I have attempted to contact the author via GitHub, as documented in Issue #233, but the author refused to comply with the GPL-3.0 requirements.
Evidence:

dash_webpage.cpp
LICENSE
Issue #233

Request:
I respectfully request that PlatformIO review this issue and consider removing the library from the repository until we can be fully confident that the binary blob does not contain any vulnerabilities or malicious code.

We have already gone through this issue in my repository. https://github.com/ayushsharma82/ESP-DASH/issues/233 .
Your actions appear to be envious, and it seems that you do not desire others to benefit from positive outcomes.
To further clarify: the “binary blob” which you are reporting as “malicious” is just the ESP-DASH’s webpage gzipped and encoded in bytes format. So nothing really is obfuscated; if you had a little brain, you would have figured it out yourself and inspected it yourself OR you could have got it inspected via a independent agency.
I have no interest in continuing this conversation as the whole thing is baseless and more or less a personal attack which happened on my 3 most popular libraries.

Thank you for your response and for explaining that the binary blob is a gzipped and byte-encoded version of the ESP-DASH webpage. I appreciate the clarification.
However, I noticed that the gzipped webpage contains minified and obfuscated JavaScript code. According to the GPL-3.0 license, the source code should be provided in the form that is most suitable for modification—typically, this would be the unminified and unobfuscated version of the JavaScript.
My concern is that without access to the original, human-readable JavaScript, users may find it difficult to inspect, modify, or extend the code as the GPL-3.0 intends. Providing the unminified source code would help ensure full compliance with the GPL-3.0 and uphold the principles of open-source software.
I hope you understand that my intention is to support the integrity of open-source licensing and to help ensure that the community can benefit fully from your work. I look forward to your cooperation in resolving this matter.

@dkaukov If you are not happy with it, please create your own projects and license them accordingly.
PS: You are talking to a law graduate so nobody can understand legal language better than me in this discussion. The GPL-3.0 license is applied to “licensee” (you) not the “licensor” which is me. Don’t make outcomes of stuff which you just read on ChatGPT.

@ayushsharma82, Thank you for your response. I respect your background in law and your expertise in legal matters.
However, I believe there might be a misunderstanding regarding the application of the GPL-3.0 license. The GPL-3.0 is indeed a license that applies to both the licensor (the person or entity distributing the software) and the licensee (those who receive or use the software). As the licensor, when you distribute software under GPL-3.0, you agree to certain obligations, such as providing the source code in a form suitable for modification.
My concern, as stated earlier, is about ensuring that the project fully complies with these obligations, particularly regarding the provision of unminified and unobfuscated source code. This is not about questioning your intentions or expertise but rather about ensuring that the principles of the GPL-3.0 are upheld for the benefit of all users and contributors.

You can keep on pursuing this baseless fight. I’m not participating in it no matter what’s the decision of PIO.
Thanks for wasting everyone’s time. Unsubscribing from this thread.

FYI, for what is worth, as a owner of the commercial version,  and as a heavy contributor of ESP-DASH, having access to the source code of both Pro and OSS version, I can confirm that there is no malicious code or license violation regarding the used libraries in ESP-DASH behind or even abuse.
I wanted to clear this part.
Regarding the fact whether an author of a project licensed with GPL has to provide the source code of the "obfuscated" parts provided in the project in the sources, I am not a lawyer so I won't comment on it.

@mathieucarbou This is a clear ego play from him because he was denied sources of proprietary webpage. Distribution of open-source software doesn’t mean any person will twist arm of the author at their will.
GPL-3.0 was specifically chosen for ESP-DASH and many of my other libraries because it allows for use of these “lite” versions in open-source but commercially available products while still allowing collaboration. What he is essentially forcing me to do is to switch to a BSL-1.1 license which is an copyleft license and I don’t want to do that because it will restrict everything to non-compete & non-commercial usage.

At this point, I believe the best course of action is to escalate the matter to the GNU Project. However, I'm also concerned that this behavior might not only constitute a GPL-3.0 violation but could also represent an abuse of the PlatformIO distribution channel. It has the potential to mislead users and undermine the core principles of open-source software distribution. Additionally, I believe the security risks involved are significant.

Go ahead. Make sure to get a signed letter with appostille stamp from them. You have no authority to comment on something/someone until you have a solid proof. Thank you.

Since 12 years in open source, I’ve seen a lot of leeches like you who are happy to fight about just anything senseless. If I’m providing something for free in “open-source” that doesn’t mean I’m obliged to do anything. It’s my good-will that the project is open source under whatever license so that people can benefit from it regardless of what is being provided. It’s solely the decision of people if they want to use it or not.
So far the community has been very supportive and they understand the value that I bring with my open-source projects even if the UI part is not disclosed. They understand that the project has a paid component because without it, so called “open-source” is NOT sustainable.
Hopefully you will understand this one day and stop pursuing aimless issues. Your decisions will only ruin “open-source” further where stringent licensing will be necessary in edge cases like these.
Over and out.

I just happened to stumble on this discussion by chance and I have nothing to do with the issue or the software in question.
Opening the upstream issue provided by @dkaukov and reading the issue and the first few comments, it is obvious that the source code includes compiled binaries without the respective source code, and this is done on purpose. I do not believe this is a copyright infringement, provided that the distributor is also the copyright holder of the UI. They are free to distribute the source code and the binaries under any license of their choosing.
However, it does seem to me that the ESP-DASH source distribution indeed does not follow the letter or the spirit of GPL. This becomes an issue whenever anyone attempts to distribute a derivative work, or worse, uses some other GPL v3 library together with ESP-DASH. Given that the upstream does not provide the required source code, it would be impossible for the derivative work author to be in compliance of the license. This is also the reason why exceptions to the GPL terms can't be made.
Given that the ESP-DASH project is also the copyright holder of the source code, it is trivially simple for them to become compliant: either distribute ESP-DASH under a non-copyleft license, or provide the missing source code. If neither of this is done, I suggest the offending library is removed from the PlatformIO registry.
As a sidenote, I do find @ayushsharma82's communication style and personal insults off-putting and unprofessional. You can do better.
As a second sidenote, @dkaukov might want to check GitHub's ToS related to such licensing discrepancies. And no, I don't think reporting these issues is petty, it's about ensuring a level playing field for anyone working in open source. Like myself.

@ayushsharma82 : to avoid any fuzzy interpretation or grey area, a solution would be:

to publish the .gz output file of the web part (where the sources are not available) in the release section of the project, as an artefact. A program output is not covered by any license as stated in the GPL FAQ, so users could download this .gz file

Remove the embbeded binary from the headers and provide some documentation to explain how users can download the .gz file, put it in the data folder, and upload it in their file system partition.

The project will be split in 2 parts

The GPL code with the c++ sources (where the web handler would server a static gzip file from fiel system instead of embedded data)
The output of the web layer as gzip, published in the release page. Up to the user to include or not this blog in his project.

The blob is then not linked, neither part of the project anymore, it comes as an artefact served from the file system.

@mathieucarbou I believe this would be a totally workable solution (referring to the comment version at 10:13 UTC). You would be doing two distributions, one under GPL v3 and one under any other license of your choosing.
Semi-related (but does not affect this solution): The .gz file is compiled output (object code, in GPL v3 parlance) of the HTML and JS sources and thus definitely under the scope of the license. The program output FAQ section refers to whether, say, a text file written using a GPL-licensed text editor would need to be licensed under GPL or not. But this does indeed not affect your proposal, which is fine in my opinion.

@mairas : I hope @ayushsharma82 will consider one of these solution too because it will also help for this issue I've opened (https://github.com/ayushsharma82/ESP-DASH/issues/217) about reducing firmware size and placing the generated output as a gzip file in a partition.

@mathieucarbou  @mairas  I respect your kind opinions. Yes, my behaviour might be slightly unprofessional in some comments but If you look at it from my viewpoint and a person who is just after you for 12 hours straight senselessly, It only takes a few minutes to snap. This could have been handled much better if dkaukov approached me in a different way.
In any case, I'm working on a BUSL license with additional use grant that will retain same privileges as GPL for users.

Hi, also, I believe,  if the .gz file is built using OSS or includes OSS-derived content, a license notice should be provided. This notice helps ensure compliance with the original licenses and informs users of their rights and obligations regarding the file. Properly documenting the license in both the repository and within the .gz file itself (if possible) would be best practice.

yeah, there are bunch of projects affected @ayushsharma82 @mathieucarbou   do you want me to create separate tickets for each of them?

@dkaukov Do you have a signed letter of violation from GNU? You sure can once you have a proof of violation but right now this just based on your assumptions.
The relicensing is being done as a precautionary measure.

@dkaukov Do you have a signed letter of violation from GNU? You sure can once you have a proof of violation but right now this just based on your assumptions.

The Free Software Foundation really isn't a stakeholder here; they might provide guidance because they have designed the license. The parties would be the ESP-DASH project (or rather, anyone who happens to own the copyright), potential developers who might distribute derivative works, as well as any intermediaries such as GitHub and PlatformIO. I don't think there would be any limitation for you to distribute software under conflicting or impossible license terms because the only injured party would be you. However, any downstream distributors would face actual reputational or financial risk.

Ayush,
I've noticed that several of your projects, including NetWizard, ElegantOTA, and WebSerial, use a similar technique of embedding binary blobs without providing the corresponding source code. I believe these projects may face the same licensing and distribution issues we're discussing with ESP-DASH.
My question is: Do you plan to address these issues across all of these projects, or would you prefer that I create separate issues for each one?

@mairas : in my case (as a developer heavily using @ayushsharma82 projects), and then consequently distributing them under GPL, I would be more concerned about me not complying with the GPL license...
From the discussion above I understand that since the source code of the web part is not made available, I then cannot even include it in my projects, even if GPL is used to comply with @ayushsharma82 's project license ?
That's the part I don't understand because the distribution is done in GPL, on GitHub, public repo, my source code is available, and consequently those of the dependencies... From my point of view as a user of the project, I am  considering it as sourde doe whether it include binary blob or not.
If the library I am depending on is a font library, which is heavily using embedded blobs, should I make sure that this project also have the sources and l mechanism to create these artefact ? Personnally, I don't mind.
What I am interested is in the correct use of a library covered under a specific license. As long as my source code of my project is made available under GPL, I should not have to go through the diligence work of exploring and making sure that all the libraries I use behind are all providing source code for every part they provide?

@mairas yes, I understand. Thanks!
So yes this is a problem indeed...

Final Statement
In light of the assumptions made by dkaukov + others involved in this discussion, and specially due to ambiguity in certain elements of the GPL-3.0 license, I have made the decision to retain the current licenses for my libraries (ESP-DASH, ElegantOTA, Netwizard and WebSerial). My legal reasoning can be interpreted as follows:
Nature of Code:
Since the webpage content is stored as an array of bytes within a source file, it is essentially a small part of my program's source code. From the perspective of the GPLv3.0, this byte array is treated as part of the library's source code, not as a distinct piece of content.
Source Code Definition
The GPLv3.0 defines "source code" as the preferred form of the work for making modifications. Since it is embedded within the source code, anyone receiving the program under the GPLv3.0 has the right to modify that byte array (even though it might be less convenient than modifying the original HTML) and redistribute the modified version.
No Obligation to Disclose Original Content:
The GPLv3.0 does not require me or the licensees to disclose the original content that generated the byte array because the original content was never part of the distributed library. The byte array itself, as part of the source code, suffices as long as it is the form used in the program.

No further feedback by anyone will be entertained. We have already wasted a lot of time. Licenses are a sensitive topic and should have been discussed professionally & legally in private by both parties before resorting to public outcry by the accuser. As the copyright owner, I will continue to provide these libraries under the same license stating my reasoning above.
If anyone still has concerns regarding the violation of the license, they are welcome to initiate legal proceedings within my Court of jurisdiction. This matter is not subject to community discussion.
Regarding the claims of the file being "malicious", you already have @mathieucarbou who has gone through the source, there is nothing malicious in my libraries and contain MIT dependencies. If anyone is still suspicious, they can get it inspected via an independent authority and report back with a proof.

I don't believe anyone is claiming Ayush is not fully within his rights to distribute his software under any license he wants, even if the content is in conflict with the license. However, since that is the case here (a binary blob is not the preferred form of work, just like Ayush admitted), the license discrepancy should prevent all third parties, including PlatformIO and GitHub, from distributing that code under GPL v3.
I also find it a bit silly that Ayush starts waving the prospect of legal action due to this issue. As I said before, you can do better. There is no injured party, and Ayush is fully within his rights to distribute content he owns the copyright to as he wants. At the same time, there should be a clear understanding that no other party should be obliged to further distribute code with invalid licensing.

@mairas  Look, I don’t have energy and time left to be paranoid about open source licensing of projects mostly used for hobbyists, students and small businesses so I don’t care if anyone removes the library or not and you agreed there is no injured party so why are we here? Did this need a public outcry?
If you are a person who is “tell everyone” type, just admit it, message these platforms privately and let them decide on their capacity.
While engaging in a public conversation with speculations, you are trying to defame me and my projects. Which I guess was the motive of @dkaukov due to his persistent nature of comments.
You are not part of PIO, Github or any other platform where the library is “hosted” so commenting here with “interpreted” thoughts about a license is waste of time for everyone.
I hope there is no need to talk more now.

There is significant value for having accurate metadata in software repositories such as PlatformIO or GitHub. If someone makes development decisions based on that metadata, and it turns out to be inaccurate, that can become very expensive, both in terms of time and money. I understand it is in your business interests to avoid fixing the licensing issues, but that still doesn't make it right.
Again, your commentary of what type of a person someone is, or whether something is waste of time or what someone's motives are, is unwarranted and unprofessional. You can do better. Focus on the substance.

Good. End of discussion now. I don’t want any further comments on this topic. I hope @dkaukov & @mairas  learn to respect that.

Note that this topic is primarily about the software being distributed in PlatformIO with incorrect licensing. It is for PlatformIO staff to resolve this issue and decide when the discussion is done.

Here you go, added "written offer of source code" as per section 6 if anyone 'thinks' dash_webpage.cpp is considered an object code. This puts all my libraries in line with GPL license and there is no ambiguity left to argue about.
https://github.com/ayushsharma82/ESP-DASH/blob/master/docs/Written Offer for Source Code.pdf

@ayushsharma82 thank you, I appreciate your admission that you need to provide the source code for the binary blobs embedded in the source code! This has moved the discussion ahead in a significant manner!
I believe there might have been a tiny confusion, though. You seem to be quoting in your offer GPL v3 section 6.b. Section 6 refers to alternative methods of conveying the object code and states the minimum requirements for conveying the corresponding source code. The section you quoted applies to object code being conveyed embedded in a physical device. Since the object code, in reality, is placed available according to section 6.d, you are required to "offer equivalent access to the Corresponding Source in the same way through the same place at no further charge." I hope this clarifies the license requirements!
Furthermore, even if your proposed approach would have been valid, that would in practice have blocked any redistribution of your libraries or any derivative works, unless the distributor first acquired the source code from you.

@mairas I have not admitted to anything. This is entirely based on presumptions any other person would have regarding what’s called a binary.
Orcale and other companies all do this with GPL software which they distribute so this is no surprise that it won’t apply here as well.
GPL is very vague around these terms and people can make anything out of it. If you are not happy with the solution, it’s advised that you hire a attorney and precent your facts.
@ivankravets The best you can do is lock down this issue because these people won’t stop with any solution and just  want to defame the project with a agenda. And most importantly it should something that your team discusses privately.

What you are referring to with Oracle and other companies applies to GPL v2. This requirement has been updated in GPL v3, and if you read the license, the language is understandable and unambiguous. I warmly recommend doing so!
Again, you seem to be making assumptions on my motives and agenda, even though the issue at hand is quite simple and could easily be solved by you. It is not very constructive to demand the discussion be stopped instead of fixing the underlying issue.

See this is what I'm talking about, you guys just don't shut up regardless of what answers or solutions I provide, which can make people lose their professional sense. I agree that you have stated your point and I've acknowledged it in earlier comments but who are you? Are you the injured party? Are you in team of the distributors? If yes, I would have happily listened to you.
You are neither of them so don't cast your opinions on something which the other person has to think about. This just explains your character more than anything. You are trying to be an obstacle in my business interests and defaming me talking "license" as your agenda. If you have so much interest to interfering with anybody's business then this is not the right place to be in.
I'm agitated because this should be interpreted by PIO themselves and what they make out of the license. We both have stated our facts and solutions, but your opinions and assumptions influence the decision. Do you want to be help liable for the actions? If so, continue rambling.

I understand that you are unhappy about the situation, and I understand how it might be upsetting to have to fix it, but the license issue is real and a problem for both PlatformIO registry's trustworthiness and for any developer using your code without knowing about the license conflict. It doesn't really matter who has reported the issue - it persists until it is addressed, and it isn't wrong to expect a level and fair playing field among open source developers.
I see at least four ways to resolve the matter:

The offending binary blobs are removed from the GPLed codebases.
The source codes of the binary blobs are released.
The projects are re-licensed.
The projects are removed from PlatformIO.

None of these options are complex and all require less work than the mailing scheme you attempted to set up. As I've said multiple times before: You can do better!

@ayushsharma82, perhaps it might be worth considering selling and distributing proprietary software through the PlatformIO registry's commercial offerings. This could be a fairer approach that aligns better with the current setup and avoids any potential conflicts with open-source licensing. Additionally, making your repositories private could also help manage the distribution of your work in a way that suits your business interests.


:/ How to fix for complied games

Describe your bug here.
so when I'm going to compile the game it got bug but this time is diffrent
Command Prompt/Terminal logs (if existing)
export/release/windows/haxe/ApplicationMain.hx:298: characters 1-8 : Build failure

Are you modding a build from source or with Lua?
Source
What is your build target?
Windows
Did you edit anything in this build? If so, mention or summarize your changes.
I just made portable mod

did you edit the source code?

:/ yeah

what changes did you make to the source?
and one thing, try getting a clean slate of the source code and building it then, if there are no issues with the clean build, then you did something wrong.


Inspector client required when accessing dashboard on web?

Sometimes, i haven't determined when exactly, i get the message that i need the desktop client to see the dashboard on the web.

When you opened links like this (below), did you see a message that asked you to run the desktop client?