Make nif_call safe

This is an idea I discussed with @cocoa-xu (please close if it was already implemented!) to make nif_call safe. Today, if the called code crashes, the NIF will be stuck forever. We can also use this opportunity to simplify the API and require less code generation, instead by asking users to add processes to their own supervision tree:
defmodule NifCall.Runner do
  use GenServer

  def start_link(opts) do
    GenServer.start_link(__MODULE__, :ok, opts)
  end

  def register(name, function) when is_function(function, 1) do
    GenServer.call(name, {:register, self(), function}, :infinity)
  end

  def unregister(name, {_pid, ref}) do
    GenServer.call(name, {:unregister, ref}, :infinity)
  end

  def init(:ok) do
    {:ok, %{}}
  end

  def handle_call({:register, owner, function}, _from, state) do
    ref = Process.monitor(owner)
    {:reply, {self(), ref}, Map.put(state, ref, function)}
  end

  def handle_call({:unregister, ref}, _from, state) do
    Process.demonitor(ref, [:flush])
    {:reply, :ok, Map.delete(state, ref)}
  end

  def handle_info({:DOWN, ref, _, _, _}, state) do
    {:noreply, Map.delete(state, ref)}
  end

  def handle_info({:execute, resource, ref, arg}, state) do
    function = Map.fetch!(state, ref)

    pid = spawn(fn ->
      try do
        NifCall.NIF.back_to_c(resource, {:ok, function.(arg)})
      catch
        kind, reason -> NifCall.NIF.back_to_c(resource, {kind, reason})
      end
    end)

    _ = Process.monitor(pid, tag: {:eval, resource})
    {:noreply, state}
  end

  def handle_info({{:eval, resource}, _, _, _, reason}, state) do
    if reason != :normal do
      NifCall.NIF.back_to_c(resource, {:exit, reason})
    end

    {:noreply, state}
  end
end

@doc """
Runs a function that invokes a NIF with the ability to call back.

## Examples

First start the NifCall.Runner in your supervision tree:

    {NifCall.Runner, name: MyApp.NifRunner}

Then call this function with the NifRunner:

    to_be_called =
      fn arg ->
        # This will be called by the NIF with arg
      end

    to_run =
      fn ->
        # This is the code that you want to run
      end

    NifCall.run(MyApp.NifRunner, to_be_called, fn tag ->
      MyLibraryNif.invoke(tag)
    end)
"""
def run(name, to_be_called, fun) do
  tag = NifCall.Runner.register(name, to_be_called)

  try do
    fun.(tag)
  after
    NifCall.Runner.unregister(name, tag)
  end
end

Tests should be written showing there is no starvation in case of throws, exits, errors, nor broken links. Even then, I'd perhaps argue adding some warnings to the library README advocating for caution. Just in case! :)
Thank you @cocoa-xu!

Hi @josevalim, thanks for pasting the code here! I recently got a cold or a winter flu, and it also infected my left eye. I'll be implementing this once my eye's condition is getting better. Right now it still hurts and I can't keep them open for a long time😭

Oh noes! I am so sorry to hear, hopefully you will recover soon. :)
FWIW, I didn't post to rush you, but to document it because it came up in a discussion with @polvalente!

hopefully you will recover soon. :)

Thank you Jose! I also hope that I can also jump back soon ^_^

FWIW, I didn't post to rush you,

Yeah, I got that😊 I'm also like leaving a note here so others would know I'm working on this one (I mean very soon, got my medicine yesterday and probably can continue on this on Saturday or Sunday)


fix(ShaderMaterial): correct serialization key spelling mistake

correct spelling mistake of serializationObject of ShaderMaterial
the key about floatsArray in serialized and deserialized object are inconsistent，then deserializing floatsArray will fail.
serialize

Parse

Please make sure to label your PR with "bug", "new feature" or "breaking change" label(s).
To prevent this PR from going to the changelog marked it with the "skip changelog" label.

Snapshot stored with reference name:
refs/pull/14661/merge
Test environment:
https://babylonsnapshots.z22.web.core.windows.net/refs/pull/14661/merge/index.html
To test a playground add it to the URL, for example:
https://babylonsnapshots.z22.web.core.windows.net/refs/pull/14661/merge/index.html#WGZLGJ#4600
Links to test babylon tools with this snapshot:
https://playground.babylonjs.com/?snapshot=refs/pull/14661/merge
https://sandbox.babylonjs.com/?snapshot=refs/pull/14661/merge
https://gui.babylonjs.com/?snapshot=refs/pull/14661/merge
https://nme.babylonjs.com/?snapshot=refs/pull/14661/merge
To test the snapshot in the playground with a playground ID add it after the snapshot query string:
https://playground.babylonjs.com/?snapshot=refs/pull/14661/merge#BCU1XR#0


Add in Metabadger

I have added it in a separate commit, thanks for your contribution @ashishpatel-git  good job!


Unfreeze Git Commit Message grammar II

Before this change, the upstream for the VSCode Git grammar was dead.
Also, the test setup for that project has been EOL since 2014, so even
just running their tests was difficult.
The replacement grammar, unlike the current grammar:

Has a vscode-tmgrammar-test test suite that is runnable and passing
and that will run in CI for any PRs (in the upstream project)
Has diff highlighting for Swedish as well as English (#133888)
Highlights touched files both in Swedish and in English

Fixes #133888
Fixes #168847
Ref: https://github.com/walles/git-commit-message-plus
For the record, I was the one setting up the new Git Commit Message project. And it was fun!
After

Sample message to test this yourselves:

# Ange incheckningsmeddelandet för dina ändringar. Rader som inleds
# med "#" kommer ignoreras, och ett tomt meddelande avbryter incheckningen.
#
# På grenen main
# Ändringar att checka in:
#	ändrad:        hej
#
# ------------------------ >8 ------------------------
# Raden ovan får inte ändras eller tas bort.
# Allt under den kommer tas bort.
diff --git hej hej
index 257cc56..5716ca5 100644
--- hej
+++ hej
@@ -1 +1 @@
-foo
+bar

Before
Note lack of file names highlighting and diff highlighting.

@walles thank you for the PR! Normally I prefer to see that the grammar has some wide use as an extension before adopting it, but given that this grammar is very small I'm fine with merging it anyway once it's ready.
I'm seeing a pretty big difference in how the "Changes to be committed" lines are colored (current on the left, yours on the right):

Are you able to restore the current behavior?

I'm seeing a pretty big difference in how the "Changes to be committed" lines are colored (current on the left, yours on the right)
Are you able to restore the current behavior?

No, I don't think that's possible.
The current behavior depends on setting the color based on keywords in English.
I want this grammar to work for other languages as well (Swedish in particular).
If you try the current highlighting with my Swedish example in the PR description you can see that the current highlighting just doesn't work, but my new one does.

The current behavior depends on setting the color based on keywords in English.

I see your point, thanks for the context. It seems like it should be possible to keep the extra highlighting for English and still provide the good highlighting you've added for all other languages. Would that be possible?

It seems like it should be possible to keep the extra highlighting for English and still provide the good highlighting you've added for all other languages. Would that be possible?

Yes, just pushed a new change for that: 15defef3787b7ec1f85306699695280fc71aba63

Thank you @alexr00 for the constructive review process, this was a pleasure!


Support deeplab v3 model on dsp delegate

Please make sure that this is a feature request. As per our GitHub Policy, we only address code/doc bugs, performance issues, feature requests and build/installation issues on GitHub. tag:feature_template
System information

TensorFlow version (you are using): 1.15
Are you willing to contribute it (Yes/No):

Describe the feature and the current behavior/state.
As tflite can support deeplabv3 on GPU with good performance as shown in:
https://www.tensorflow.org/lite/models/segmentation/overview
But when ran the deeplab v3 model on dsp delegate, found it's very slow and the logs showed the upsupported ops on dsp delegate. @karimnosseir , do you think it's possible to fully support deeplab v3 on dsp delegate:
Model file: https://github.com/tensorflow/tensorflow/files/4182220/deep_lab_v3_mv2.tflite.zip
Converted and quantized from http://download.tensorflow.org/models/deeplabv3_mnv2_dm05_pascal_trainaug_2018_10_01.tar.gz
Here are the logs:
INFO: Initialized TensorFlow Lite runtime.
INFO: Created TensorFlow Lite delegate for Hexagon.
INFO: Hexagon delegate: unsupported node index: 25.
INFO: Hexagon delegate: unsupported node index: 27.
INFO: Hexagon delegate: unsupported node index: 33.
INFO: Hexagon delegate: unsupported node index: 35.
INFO: Hexagon delegate: 32 nodes delegated out of 111 nodes.
INFO: Replacing 32 node(s) with delegate (TfLiteHexagonDelegate) node.
Will this change the current api? How? No.
Who will benefit with this feature? Developer who is using deeplab v3.
Any Other info.

https://developer.qualcomm.com/project/image-segmentation-using-deeplabv3

Thanks for the request.
I think the main thing missing are SpacetoBatchND and BatchToSpaceND. We will look in adding them.
I am not sure what are your expectations, but just to let you know the model you attached when i ran on
Samsung S9 i see ~368ms when run on CPU (4 threads)

@karimnosseir , Thanks for the support, this model is an example, is it reasonable to expect 3X+ faster on DSP than CPU? Looking forward to trying it out once you can add the support of two missing Ops. Thanks.

@karimnosseir Are you sure? Check https://github.com/tensorflow/tensorflow/issues/29509

@karimnosseir Sure, this is the new model with experimental_new_converter, please check if that's what you want?
https://github.com/tensorflow/tensorflow/files/4189351/deep_lab_v3_mv2_new.zip

@dlaiup I think you set some config incorrectly, the model you are sending has all ops expecting float not uint8.
Can you double check please.
Thanks

@karimnosseir , Add the two tfllite deeplab_v3 models converted with and without experimental_new_converter:

Without experimental_new_converter:
https://github.com/tensorflow/tensorflow/files/4194569/deeplab_v3_quant.zip
With experimental_new_converter:
https://github.com/tensorflow/tensorflow/files/4194570/deeplab_v3_quant_new.zip

Please check if they are what you expected. Thanks.

@dialup Are you using the nightly version? See https://github.com/tensorflow/tensorflow/issues/29509#issuecomment-580451630

@bhack , I am using tensorflow 2.1.0 version.

@karimnosseir , using the correct convert configuration (up to ResizeBilinear_1 layer), the deeplab v3 model is running ok now. Will close this issue. Thanks.

@bhack Yes, the SpaceToBatchND-Conv2D-BatchToSpaceND can be converted to a single Conv2D, thanks.

Glad it is working now.
Do you mind sharing the newly converted model
Thanks

@dlaiup There was some changes recently in resize bilinear handling. Check https://github.com/tensorflow/tensorflow/issues/33691.

@karimnosseir , Sure, here is the converted model. Thanks.
https://github.com/tensorflow/tensorflow/files/4199909/deeplab_v3_quant_new.zip

@dlaiup Thanks for pointing out. I think that change is mainly for CPU kernels.

Thanks for sharing. The new is faster on CPU and can also be fully delegated on Hexagon DSP.
Just tried it ~2x faster than CPU when run on hexagon

@karimnosseir Yes, it can be fully deployed on DSP. Thanks for the support.


[Do not merge] Small toolchain bump to check whether tests pass with older toolchain

Description
Seeing flaky and failing tests on https://github.com/vercel/turbo/pull/5376, the purpose of this PR is to see if this also happens with a different toolchain bump.
Testing Instructions
CI

Verified the issue only happens on later nightlies, closing this.


Update localizations to new copy, add Korean

[x] @DLatouche update FR (will get you a diff of what changed since your PR, mostly on pool detail page)
[x] @dogemos or @delivan  add/delegate KR

@jonator
I've checked the pr but I couldn't find the JSON file related to the Korean translation. If it's not going on yet, can I contribute about translation?

@gnujoow Will be adding Korean


Can't scroll tabs when lots of tracks are loaded

When loading multiple gpx tracks with long names, i can't scroll them left or right to be able to reach the end of the list on either sides.
see image

It works as expected on my side. You need to scroll while your mouse is over the tabs.
If is still doesn't work, which browser are you using?

Ok it didn’t occurred to me the mouse scroll would do it.  I am mainly
using a chromebook on a lenovo tablet .
Ill give it a shot!
Le jeu. 11 nov. 2021 à 09:11, vcoppe @.***> a écrit :

It works as expected on my side. You need to scroll while your mouse is
over the tabs.
If is still doesn't work, which browser are you using?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/gpxstudio/gpxstudio.github.io/issues/77#issuecomment-966332759,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AOGDLGZ7BIG2CXAJC4HC26DULPFHHANCNFSM5HXPHSOQ
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

--
Pierre-Felix Breton
@.***
+1<PHONE_NUMBER>
ca.linkedin.com/in/pfbreton

Yes, scrolling with mouse worked perfectly!


wip

Codecov Report

Merging #16 into master will increase coverage by 0.07%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master      #16      +/-   ##
==========================================
+ Coverage   89.05%   89.13%   +0.07%
==========================================
  Files           1        1
  Lines         137      138       +1
==========================================
+ Hits          122      123       +1
  Misses         15       15

Impacted Files
Coverage Δ

lintipy.py
89.13% <100%> (+0.07%)
:arrow_up:

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 0d428d0...4dfcd59. Read the comment docs.


pandas: add NamedAgg overload to DataFrameGroupBy

This fixes pylance-release#2180, I think; at the very least, it resolves the error that I submitted in the PR.
pandas' NamedAgg was added in 0.25.0, and it essentially lets you name aggregations on the fly by passing the aggregations as keyword arguments.
This code type checks now, when it didn't before (see linked issue):
import pandas as pd

df_groups = pd.DataFrame().groupby("X")
reveal_type(df_groups)  # DataFrameGroupBy

df_groups.agg(x=pd.NamedAgg("a", "count"))
df_groups.agg(x=pd.NamedAgg("a", "count"), y=pd.NamedAgg("b", "count"))
df_groups.aggregate(x=pd.NamedAgg("a", "count"), y=pd.NamedAgg("b", "count"))

As mentioned in #126, I'm unfamiliar with your contribution process. Let me know what else I can do to get this landed. Thanks!

I think this is the proper fix
https://github.com/microsoft/python-type-stubs/pull/138/files

I think you're right, thanks for the review - will close this one.


⚠ GitHub has degraded performance

In 5d32789, GitHub (https://www.githubstatus.com/api/v2/status.json) experienced degraded performance:

HTTP code: 200
Response time: 288 ms

Resolved: GitHub performance has improved in a2989a9.


Request for comments: Support for shell autocompletion

I would like to get your feedback whether you would accept a PR for shell autocompletion.
I am in the process of migrating a RubyGems from gli (GitHub) to dry-cli. gli generates output for bash and zsh autocompletion e.g. rubygem-command help -c (see documentation).
I am pretty sure hanami-cli would profit from such a feature as well.
Should I take a shot at this or is this something you are not interested?

Yep, I'd definitely be happy to see something like this be added!

Note to self: This is somewhat tricky. Commands are not readily available as a list. CommandRegistry is tree-ish.


fix: updated sonar test link

Description

updated link to test dir in apps/generator in https://github.com/asyncapi/generator/blob/master/.sonarcloud.properties

apps/generator/test/**/*

Hey @derberg, I've updated the directory path as you suggested. Could you take a look and confirm if everything looks correct?


Oslo june2018

Added Oslo

Thank you but please try to render it locally. I think the rendering is currently broken.

Sorry, I will fix it.

Nothing to apologize for. I know this is yet another setup and we have too many of those. If you run into trouble, I can take over - I just want to decentralize a bit the administration.

I see that this is different than our course material pages (jekyll). How do I render it ?.

In principle the same way: $ jekyll serve

Closing. Will add this page in a moment.


Guide to contribute

Well, it was a bit hard to set up the project to work in my machine. I spent some minutes configuring the project (changing config.php, .htacess and etc).
What do you think about writing some little info about how to contribute?

Is there already a step to step guide to setup the project, I have also a lot of trouble  getting up and running ....


Running evaluation on dataset outputs

Feature request
It would great to be able to generate a dataset with outputs and then perform evaluation directly on these "reference outputs".
Motivation
While building out a LangSmith evaluation pipeline, you'll likely need to do several iterations of evaluation metrics to tune them as desired. If on each iteration you also need to regenerate output examples, you end up eating up a lot of tokens on generation that is otherwise reusable.
I've seen the compute_test_metrics beta function from the cookbook's which achieves a similar result; however, its adding on top of existing tests rather than allowing you to run directly on a created/imported dataset.
Thanks!

We are working on something in this vein, but want to make sure we satisfy your use case: could you elaborate on this a bit more?
Is the flow something like: first create a set of inputs, generate candidate outputs, manually review and revise, then continue iterating?
Or is it more a case where ground truth isn't super meaningful and you mainly want to compute relative performance to some baseline that you may update over time?
Or something different?

Closest to the second one. The current work I am doing there is no ground truth. The flow at least that I imagined is something like:

Follow the normal dataset creation processes, but in this case the "outputs" aren't a reference / ground truth and rather the thing to be evaluated
Run evaluation directly on said dataset's outputs

With the primary motivation being to save money/inference time when iterating on LangSmith evaluators, since I've found myself making several tweaks to the evaluators I've setup to ensure they align with my expectations, but each evaluator iteration requires re-generation of the outputs to be evaluated which ends up costing extra and changes the outputs you may have made specific tweaks to address.

Seems like this? https://docs.smith.langchain.com/how_to_guides/evaluation/upload_existing_experiments


Running the App with a Non-Azure, MSSQL-Based Durable Task Framework

Is it possible to run this app using the MSSQL-based Durable Task Framework without relying on Azure?

Nevermind, I found this and it seems working fine.


force import

I have many scenarios where I would do this:
import myExternalModule = require("./myExternalModule");
// not using myExternalModule here

I dont use myExternalModule in my code but still I want it to be included using requirejs. I just need it to be there.
If there could be a forceimport keyword that would be very cool!

@danquirk It's an arbitrary and dangerous thing to have the TypeScript engine take on the responsibility of optimizing the import statements. There are many patterns that TypeScript does not yet capture from JavaScript. One example is how it does not address that this could have a type #229 .
Import is used to load dependencies before the current code is loaded and may not be referenced directly. Angular dependencies are one example, while jQuery plugins are another. Any library that extends a base object and is not referenced directly are affected by "feature". By deciding to arbitrarly not included an import based on local static analysis you are imposing a C style compiler pattern over the explicit intention of the developer who wrote the import statement. The expectation of writing import is that it will be included as a dependency and available to the local scope of the module. Any other action is a side effect to the natural expectation of choosing to write import inside a module.
It is very possible that in this case the TypeScript compiler could do less, and accomplish more.

TypeScript next release will support ES6 style modules (the change is currently in master). so if all what you want is declaring dependency you can use:
import "myLib";

The compiler will not elide this import.

Will the existing inconsistent behavior be address, or remain as something fun for people to discover? Should it be added to the documentation that their is a case where import does not add the file as a dependency? When building TypeScript AMD modules will ///<reference... now be considered an error?
The way import currently works is bad design. Bad design creates ambiguity. If the additional behavior is not clearly defined then it will more than likely be discovered though it's side effect. Hence the OP, myself, and other comments and bugs related to it in this forum.
There is an existing body of practice that already exists when using Common or Require style dependency management. The implementation of import shows that it was ignored.

Regarding documentation, please refer to the spec section 11.2.5 and section 11.2.6:

An external import declaration is represented in the generated JavaScript as a variable initialized by a call to the 'require' function provided by the module system host. A variable declaration and 'require' call is emitted for a particular imported module only if the imported module, or a local alias (section 10.3) that references the imported module, is referenced as a PrimaryExpression somewhere in the body of the importing module. If an imported module is referenced only as a ModuleName or TypeQueryExpression, nothing is emitted.

/// references are not the same as imports. /// references brings additional declarations into your global scope, e.g. dom APIs. it is a statement to the compiler to trust the existence of these entities, and it does not have impact on the generated code.
Imports on the other hand need to be emitted as require statements. in the case you are only using an import in a type position, the intent is not clear, either you want only the types (which are design time constructs that do not exist at run time), and in this case you want the import elided, and if it is not you would be importing possibly a non existing type-only module. Or you want the side effects as well. For the latter, import "mod"; syntax seems to be a clearer syntax to declare intent.

@mhegazy I do not want to open a new issue, but this is a bit problem in React world.
Consider the code below, when compiled to js the React reference is removed as it does not appear in the code and the code will fail as ReactRouter depends on it. The fix ... really dumb is below the code. Is there any smarter way of deoing that? Thanks.
import * as React from "react"; var temp = React.DOM;
....

// mf("route.schedules", "") // this is to register a translation
anonymousRoutes.route("/schedules", {
  name: "schedules",
  subscriptions: function() {
    this.register("schedules", subscriptions.subscribe("schedules"));
  },
  action: () => {
    ReactLayout.render(ClearLayout, {content: <Book />});
  }
});

FIX ;) - EHM
import * as React from "react"; var temp = React.DOM;
...

the code will fail as ReactRouter depends on it.

does it need the var "React" or just some side effects from the import?

It need the side effect from the import. The var was added to only not remove the import in the transpiled code.

so why not just add
import * as React from "react"; // get the types
import "react";  // just for side effect

in the output, the last import: import "react" will not be elided.

Unfortunatelly this dows not work and I still get:
ReferenceError: React is not defined
    at action [as _action] (schedule_router.jsx:15)
    at Route.callAction (kadira_flow-router.js?f961d732ed2b89a53d490af5979b899800aa1a5d:2306)
    at kadira_flow-router.js?f961d732ed2b89a53d490af5979b899800aa1a5d:2025
    at Object.Tracker.nonreactive (tracker.js:560)
    at kadira_flow-router.js?f961d732ed2b89a53d490af5979b899800aa1a5d:2016
    at Tracker.Computation._compute (tracker.js:294)
    at Tracker.Computation._recompute (tracker.js:313)
    at Object.Tracker._runFlush (tracker.js:452)
    at Object.Tracker.flush (tracker.js:412)
    at Router._invalidateTracker (kadira_flow-router.js?f961d732ed2b89a53d490af5979b899800aa1a5d:2065)

I think that the reason here are the "weak dependencies" in Meteor, which depend on callee to provide all the necessary references for them.

I've started to learn typescript recently for Angular 2. This has caught me out a number of times as I'm sure it will for other new comers. I understand that this is an optimisation but it's actually very confusing. If I type something in my ts file I expect it to produce, output or some sort not simply ignore it. I get that I can force the require statement to be produced but that seems little a hacky. This seems like a cause where I as the user should be able to make my own decisions with out the compiler deciding what's best.

TypeScript overlays type declaration on top of values, so the same import syntax gets you types, values, or both. this makes it very convenient and intuitive to work with module; if you need a type from another module, just import it as you import a variable, or just import the class, and use it both as a type and as a constructor with new.
The flip side of this, you can have imports to modules that do not exist, as they are just type containers. if the compiler emitted references to these modules, it is going to fail at run-time. the solution we have in place is to detect how the import was used, and all references to it are used as types, then it is not needed at run-time and elided.
obviously this can be confusing if you need the side effects of a module as well. but the other way around is confusing as well if an import to a non existing module was emitted, let a side having to loose the convenience of bundling types and values together in the same syntax.

A workaround:
If using traditional resolution, an import statement containing a ! in its identifier will never be eluded. I believe this has something to do with us trying to support some systemjs behavior better, but can be used to force an import. If you are using systemjs, requirejs, or any loader which allows remapping of module identifiers, you can end your forced import in !js or a similar mark and map it away with your module loader. TS will emit the import verbatim (and not try to typecheck or resolve it), and your loader can be taught how to understand the import.

It appears the team is already having to make special-case code for these types of imports such as in checker.ts:
// If we're compiling under --jsx react, the symbol 'React' should
// be marked as 'used' so we don't incorrectly elide its import. And if there
// is no 'React' symbol in scope, we should issue an error.
if (compilerOptions.jsx === JsxEmit.React) {
    let reactSym = resolveName(node.tagName, "React", SymbolFlags.Value, Diagnostics.Cannot_find_name_0, "React");
    if (reactSym) {
        getSymbolLinks(reactSym).referenced = true;
    }
}

As @mhegazy points out this isn't just about optimization but rather it is to avoid requiring an import with no runtime definition (e.g. Interface) which would cause a runtime error.
I question which will happen more often. You could easily detect if the import is a *.d.ts so those would be easily elided.
In the rest of the cases it seems like a pretty trivial thing for the compiler to detect that the imported module would have no runtime output and only elide those imports.
From a DRY perspective, this suggestion left me wishing I had a transpiler for your transpiler to write this duplicated code for me.
import * as React from "react"; // get the types
import "react";  // just for side effect

The way I see it, it should be the imported file's choice whether it needs to be loaded at runtime (because it knows it has side effects). This really should not be decided by the loading file (i.e., the file with the import statement), since it's not its business to know implementation details of other files/modules.
At least this would work well from an angularjs perspective, where a file that defines directives and services "knows" that it must be loaded at runtime if referenced, so the compiler must not elide it. Some kind of hint in a file to the typescript compiler to "not elide" would fix this IMO. But I'm probably overlooking some use case here.
-JM

xmodule.ts:
console.log('ive been imported');
export class X {
}

import {X} from "xmodule"; // get the types
import "xmodule";  // just for side effect

If xmodule has statements, .e.g. the console.log statement, it is by definition not just a pile of declarations. It should not be the responsibility of the importing module to make statements which use xmodule in order for xmodule to be considered more than just a series of type declarations.

@weswigham
You mentioned using a bang to force your import. That is preferred for my scenario. How do I use it though? Tried all of the following:
!import {Service} from './service';
import! {Service} from './service';
import {!Service} from './service';
import {Service!} from './service';
import {Service} from '!./service';
import {Service} from './service!';
import {Service} from !'./service';
import {Service} from './service'!;

It was in the string - but I think the behavior was removed recently when path mappings were introduced.

I'm using library, like react, for importing node wrapper - h (in react it's react() if I'm not mistaken), so I import like this:
import { h, Component } from "preact";

Then, of course, I have no h in the runtime. Because why would in be there? Also, using with jsx preserve, so TypeScript really does not about h, but babel then knows.
So, what is left, using reference like h; after import, yes?

For h (or any other custom jsx factory) use --jsxFactory to let the compiler know that this is the factory you are using at runtime. e.g. --jsxFactory h.
Not this requires typescript@next at the moment, should be available in the TypeScript 2.1.2.

@mhegazy For projects that have two kind of JSX consumer (such as react and snabbdom) it's not acceptable.
I'm working on a project that use react to render web UI and a customized virtual dom implemented by ourselves to render webgl objects. And it hits the corner case, as we NEED two different kind of @jsx annotation for the same project.
Now I'm forced to export our own h as a global variable... It's ugly.

Include me in the list of developers who need/want a one liner import that does this.  Two lines of source to accomplish it is what we're trying to eliminate, especially when we want to import many modules in a row.  I guess what sounded best so far to me is a keyword / syntax to force the import.  Thanks again guys!


[Model Request] Support DCLM-7B

Is the open_lm branch complete and usable?
I tried the branch and the model keeps on repeat what I am saying.

I don't think it's working yet.. we need to debug that. Can leave this issue open for now if someone has time to pick it up.
Relevant branch: https://github.com/ml-explore/mlx-examples/tree/openlm

What is the possible template that could make the DCLM-7B work as instruct model?


omniauth-google-oauth2 and devise-api

Hey,
do you know if this works together? omniauth-google-oauth2 and devise-api
have some problems with the CERF token with api only ( at the moment not using devise-api)

you need to cover omniauth callbacks without this gem.
but you can can both of them in a same project, it can be works successfully @arpu 🙌


Cannot read properties of null (reading 'domNode')

TypeError: Cannot read properties of null (reading 'domNode')
at L.bb in src/vs/base/browser/ui/list/listView.ts:977:13
at L.Y in src/vs/base/browser/ui/list/listView.ts:863:10
at L.Y in src/vs/workbench/contrib/notebook/browser/view/notebookCellListView.ts:254:9
at L.updateElementHeight in src/vs/base/browser/ui/list/listView.ts:554:8
at h.updateElementHeight2 in src/vs/workbench/contrib/notebook/browser/view/notebookCellList.ts:1267:13
at Pe in src/vs/workbench/contrib/notebook/browser/notebookEditorWidget.ts:2301:15
at doLayout in src/vs/workbench/contrib/notebook/browser/notebookEditorWidget.ts:2313:4
at D.G in src/vs/workbench/contrib/notebook/browser/view/cellParts/cellOutput.ts:773:23
at D.render in src/vs/workbench/contrib/notebook/browser/view/cellParts/cellOutput.ts:535:9
at new h in src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCell.ts:120:33
at b.o in src/vs/platform/instantiation/common/instantiationService.ts:159:18
at b.createInstance in src/vs/platform/instantiation/common/instantiationService.ts:125:18
at Q.renderElement in src/vs/workbench/contrib/notebook/browser/view/renderers/cellRenderer.ts:379:73
at J.renderElement in src/vs/base/browser/ui/list/listWidget.ts:1249:13
at L.Z in src/vs/base/browser/ui/list/listView.ts:940:13
at L.U in src/vs/base/browser/ui/list/listView.ts:675:10
at L.splice in src/vs/base/browser/ui/list/listView.ts:576:16
at <anonymous> in src/vs/base/browser/ui/list/splice.ts:17:35
at Array.forEach (<anonymous>)
at t.splice in src/vs/base/browser/ui/list/splice.ts:17:20
at <anonymous> in src/vs/base/browser/ui/list/listWidget.ts:1585:57
at fn in src/vs/base/common/event.ts:1587:13
at h.splice in src/vs/base/browser/ui/list/listWidget.ts:1585:22
at h.splice2 in src/vs/workbench/contrib/notebook/browser/view/notebookCellList.ts:533:9
at <anonymous> in src/vs/workbench/contrib/notebook/browser/view/notebookCellList.ts:424:9
at Array.forEach (<anonymous>)
at h.lb in src/vs/workbench/contrib/notebook/browser/view/notebookCellList.ts:406:23
at d.value in src/vs/workbench/contrib/notebook/browser/view/notebookCellList.ts:366:10
at s.y in src/vs/base/common/event.ts:1156:13
at s.z in src/vs/base/common/event.ts:1167:9
at s.fire in src/vs/base/common/event.ts:1191:9
at V in src/vs/workbench/contrib/notebook/browser/viewModel/notebookViewModelImpl.ts:235:31
at compute in src/vs/workbench/contrib/notebook/browser/viewModel/notebookViewModelImpl.ts:279:6
at s.y in src/vs/base/common/event.ts:1156:13
at s.z in src/vs/base/common/event.ts:1167:9
at s.fire in src/vs/base/common/event.ts:1191:9
at d.value in src/vs/workbench/contrib/notebook/common/model/notebookTextModel.ts:262:30
at s.y in src/vs/base/common/event.ts:1156:13
at s.fire in src/vs/base/common/event.ts:1187:9
at s.resume in src/vs/base/common/event.ts:1335:12
at f.applyEdits in src/vs/workbench/contrib/notebook/common/model/notebookTextModel.ts:525:27
at f.reset in src/vs/workbench/contrib/notebook/common/model/notebookTextModel.ts:400:8
at o.update in src/vs/workbench/contrib/notebook/common/notebookEditorModel.ts:308:23
at async h.cb in src/vs/workbench/services/workingCopy/common/storedFileWorkingCopy.ts:709:4
at async h.$ in src/vs/workbench/services/workingCopy/common/storedFileWorkingCopy.ts:672:4
at async h.Z in src/vs/workbench/services/workingCopy/common/storedFileWorkingCopy.ts:613:4
at async p.lb in src/vs/workbench/services/workingCopy/common/storedFileWorkingCopyManager.ts:555:4
at async p.kb in src/vs/workbench/services/workingCopy/common/storedFileWorkingCopyManager.ts:446:3
at async Object.factory in src/vs/workbench/services/workingCopy/common/storedFileWorkingCopyManager.ts:301:6

Go to Errors Site

Thanks for creating this issue! We figured it's covering the same as another one we already have. Thus, we closed this one as a duplicate. You can search for similar existing issues. See also our issue reporting guidelines.
Happy Coding!


[#67] Attachment Timestamps

Fixes #67

Updated transactions base to new structure
Updated transaction creation to new structure
Updated affected test cases

Let me know if I missed anything.

Thanks for your updates!  One last thing; could you take a look at the unit test failures?
https://travis-ci.org/iotaledger/iota.lib.py/jobs/279143972

Yea I overlooked some of them. Sorry! Fixed now.

Gracias amigo!  Taking a look now.

I'm going to give this a final once-over tonight; need to validate it against the JS library.

Looks good!  Merging....


Landscape automatic IME switching

Hey, Thanks for the contribution, I understand your intent in the code, but I have other plans for the landscape mode. I will not be able to merge this pull request.


Liquid Warning: Liquid syntax error (line 36): Expected end_of_string but found id in "{{- tag -}}" in index.html

As shown here:
https://travis-ci.org/GabLeRoux/gableroux.github.io/builds/229766142#L270
I have a warning each time I run
bundle exec jekyll build

Configuration file: /home/travis/build/GabLeRoux/gableroux.github.io/_config.yml
Source: /home/travis/build/GabLeRoux/gableroux.github.io
Destination: /home/travis/build/GabLeRoux/gableroux.github.io/_site
Incremental build: disabled. Enable with --incremental
Generating...
Liquid Warning: Liquid syntax error (line 36): Expected end_of_string but found id in "{{- tag -}}" in index.html
Liquid Warning: Liquid syntax error (line 36): Expected end_of_string but found id in "{{- tag -}}" in page2/index.html
Liquid Warning: Liquid syntax error (line 36): Expected end_of_string but found id in "{{- tag -}}" in page3/index.html
done in 1.905 seconds.
Auto-regeneration: disabled. Use --watch to enable.
Running ["ScriptCheck", "LinkCheck", "ImageCheck"] on ["./_site"] on *.html...

So something's wrong here:
https://github.com/GabLeRoux/gableroux.github.io/blob/09a50e6cd27129f72b09f935cef84363f1711b5f/index.html#L40-L40
That's probably because I don't use tags or something like that.

I don't know exactly why, but this problem is now gone. Probably fixed with a package upgrade or something. 🎉
❯ bundle exec jekyll build
Configuration file: /Users/gableroux/repos/gableroux/gableroux.com/_config.yml
            Source: /Users/gableroux/repos/gableroux/gableroux.com
       Destination: /Users/gableroux/repos/gableroux/gableroux.com/_site
 Incremental build: disabled. Enable with --incremental
      Generating...
                    done in 1.369 seconds.
 Auto-regeneration: disabled. Use --watch to enable.


[BUG] Experimental Duration usage causes problem with Kotlin 1.6

Describe the bug
A clear and concise description of what the bug is.
Store uses toDuration method which doesn't exist anymore.
To Reproduce
Steps to reproduce the behavior:
Compile app with Kotlin 1.6.0-RC and store will throw exception.
   java.lang.NoSuchMethodError: No static method toDuration(DLjava/util/concurrent/TimeUnit;)J in class Lkotlin/time/DurationKt; or its super classes (declaration of 'kotlin.time.DurationKt' appears in /data/app/~~IRSXWQfX07qm58ody-twgg==/de.is24.android.debug-iVN1VrbvGOFR0iQJz1pxVg==/base.apk!classes35.dex)
        at com.dropbox.android.external.store4.MemoryPolicy.<clinit>(MemoryPolicy.kt:116)
        at com.dropbox.android.external.store4.StoreDefaults.<clinit>(StoreDefaults.kt:23)
        at com.dropbox.android.external.store4.RealStoreBuilder.<init>(StoreBuilder.kt:91)
        at com.dropbox.android.external.store4.RealStoreBuilder.<init>(StoreBuilder.kt:86)
        at com.dropbox.android.external.store4.StoreBuilder$Companion.from(StoreBuilder.kt:65)

Expected behavior
A clear and concise description of what you expected to happen.
Store should work with Kotlin 1.6.0-RC

Hello could you kindly try this version
https://search.maven.org/artifact/com.dropbox.mobile.store/store4/4.0.2-KT15/jar
it should work with kotlin 1.5+


Can arm64/v8 (Apple M1) be added to the docker image?

When pulling the docker image on my mac, I get the following error:
❯ docker pull onnxmlirczar/onnx-mlir-dev
Using default tag: latest
latest: Pulling from onnxmlirczar/onnx-mlir-dev
no matching manifest for linux/arm64/v8 in the manifest list entries

I can work around this by doing docker pull --platform linux/amd64 onnxmlirczar/onnx-mlir-dev, but I was wondering if ARM can be added as a platform for the image.

Furthermore, when trying to build using the example Dockerfile on Apple M1, make sure to replace FROM onnxmlirczar/onnx-mlir-dev with FROM --platform=linux/amd64 onnxmlirczar/onnx-mlir-dev.

@nicholaiTukanov Thank you for your feedback!!!!

Note: when using the --platform=linux/amd64 method of running on Apple M1, I get the following warning when launching a container:
WARNING: The requested image's platform (linux/amd64) does not match the detected host platform (linux/arm64/v8) and no specific platform was requested

I haven't run into any issues yet, but wanted to mention this just in case.

Hmmm I have never received this warning personally in my IDE. I am using visual studio code and it has always worked for me without any warnings.

However, I can test on my end (I do have an Apple M1) and update the docker documentation accordingly :)

@nicholaiTukanov Hmm what you suggested did not work for me...... image is unknown is the error I get. Can you copy and paste your exact commands as to what works for you ?

When pulling the docker image on my mac, I get the following error:
❯ docker pull onnxmlirczar/onnx-mlir-dev
Using default tag: latest
latest: Pulling from onnxmlirczar/onnx-mlir-dev
no matching manifest for linux/arm64/v8 in the manifest list entries

I can work around this by doing docker pull --platform linux/amd64 onnxmlirczar/onnx-mlir-dev, but I was wondering if ARM can be added as a platform for the image.

The workaround you mentioned is specified already in the documentation for building docker.

Ah whoops, I must have missed that.

@nicholaiTukanov Hmm what you suggested did not work for me...... image is unknown is the error I get. Can you copy and paste your exact commands as to what works for you ?

What command did you use?
I used the following for pulling the image: docker pull --platform linux/amd64 onnxmlirczar/onnx-mlir-dev. However, I didn't end up using this workflow, and I instead just changed the first line in the example Dockerfile to: FROM --platform=linux/amd64 onnxmlirczar/onnx-mlir-dev

Okay understood.... do you mind doing me a favor. Look at the instructions in doc/docker.md let me know if that section on specifically using an M1 machine works for you. I have no problems on my end and then we can close out this issue. Thanks!

@hamptonm1 I followed the instructions in doc/docker.md regarding the M1 and it works for me!

Awesome! So I will close this issue out as resolved. Thanks!


zh_TW_c4  404 error

https://huggingface.co/datasets/yentinglin/zh_TW_c4

It seems that the original author has taken down these two datasets.

Due to legal concerns raised by our legal advisors regarding copyrighted material, we've temporarily removed the datasets. We're actively seeking further opinions and hope to make the training datasets available again soon. Rest assured, the models are not affected by this issue.
經過專業律師的法律建議，我們暫時將有版權疑慮的資料集下架。我們會積極尋求更多的法律意見，希望能儘快重新上架這些訓練資料集。模型本身並無此疑慮，請大家放心。


Updated clustertest and cluster-standup-teardown to support cluster-cloud-director as a unified app

What this PR does
towards https://github.com/giantswarm/giantswarm/issues/31701
Checklist

[x] Update changelog in CHANGELOG.md.

Trigger e2e tests

/run cluster-test-suites

Failures are flakes and unrelated to this change. Adding skip label


Don't forward host header

If the host header is forwarded, the host header in the request doesn't
contain the proper value. For instance, if we forward 'Host:
mapserver.local', the host header in the request will be 'Host:
localhost:8080' which is incorrect and may provok the request to fail
with 404.

Gradle server is down.  we have to wait for that to be restored before travis can pass.

So with this change you are preventing that the host header is forwarded? This might be required in some applications.
MFP is not replacing mapserver.local with localhost:8080. It sounds like this is due to a proxy configuration on your system.
Instead of all forwarding all headers, you could only forward the headers that you need (without the host).

This might be required in some applications.

MFP is not replacing mapserver.local with localhost:8080. It sounds like this is due to a proxy configuration on your system.

It might apache changing the host from dev.geojb (where I develop) to localhost. Anyway, in order for HTTP 1.1 to work correctly, the host header must be correctly set. In some cases, it might be the same as in the request to MFP but I think that in general it will not be the case. So in my opinion, it must never be forwarded but be set to the correct value.

Instead of all forwarding all headers, you could only forward the headers that you need (without the host).

I could try that again.

I think that more complicate because on localhost we need to forward the Host to steal be in the same virtualhost...

I don't think that I understand what you mean. The value of the host header, in order for HTTP to work properly, is link to the request you make: it must be the host:port of the server your want to speak to.
For instance, if my layers are on toto.julien.local, the host header must be toto.julien.local, otherwise the web server cannot know which vhost you are referring to, no matter where you proxy or mpf lies.

on many infrastructure with a proxy if we do e.g. from the host name gis.org:
curl http://gis.org/mapserver
we will get an error but with
curl http://localhost/mapserver -H 'Host: gis.org'
it's working.
It's for that that we can do the following config:
        - !configureHttpRequests
            httpProcessors:
            - !mapUri
                mapping:
                    (https?)://gis.org/(.*): "$1://<IP_ADDRESS>/$2"

And in this case we needs to forward the Host Header with for example
        - !configureHttpRequests
            httpProcessors:
            - !mapUri
                mapping:
                    (https?)://gis.org/(.*): "http://<IP_ADDRESS>/$2"
            - !forwardHeaders
                headers:
                - Cookie
                - Host
                - Referer

But is completely true in this case that if we request an UTL outside gis.org the Host header shouldn't be forwarded and actually it's the case :-(

So is the actual problem that the headers should only be forwarded for some URLs but not for all? Would it help to set matchers (like for restrictUris), e.g.:
        - !forwardHeaders
            headers:
            - Cookie
            - Host
            - Referer
            matchers:
            - !dnsMatch
            host: tiles.xyz.com
            port: 80

Yes, but in this case the Referer will not work anymore because he should be forwarded every-time...
An other possibility is to have something like this :
        - !configureHttpRequests
            httpProcessors:
            - !mapUri
                mapping:
                    (https?)://(gis.org)/(.*): "$1://<IP_ADDRESS>/$3"
                fill_host_header_with: $2
            - !forwardHeaders
                headers:
                - Cookie
                - Referer

I add the fill_host_header_with...

The idea would be that you can have multiple forwardHeaders processors. For example one default for all requests, and one for a specific host:
    - !forwardHeaders
        headers:
        - Host
        matchers:
        - !dnsMatch
        host: tiles.xyz.com
        port: 80
    - !forwardHeaders
        headers:
        - Cookie
        - Referer

I add the fill_host_header_with...

What if you want to forward other headers only for a specific host?

on many infrastructure with a proxy if we do e.g. from the host name gis.org:
curl http://gis.org/mapserver
we will get an error but with
curl http://localhost/mapserver -H 'Host: gis.org'
it's working.

OK, it still looks strange to me, but I am not used to infrastructure with proxies.

So is the actual problem that the headers should only be forwarded for some URLs but not for all?

Indeed
@tsauerwein @sbrunner Both your proposals look good. I don't really have a strong opinion on this as long as this works. I'll let you discuss it. If you need someone to do tests, let me know, I can do that!

+1 @tsauerwein If we can also mix it with !addHeaders (that is probably already the case :-) )

This seems the simplest solution for me:
    - !configureHttpRequests
        httpProcessors:
        - !mapUri
            mapping:
                (https?)://(gis.org)/(.*): "$1://<IP_ADDRESS>/$3"
            fill_host_header_with: $2
        - !forwardHeaders
            headers:
            - Cookie
            - Referer

No need to complex forward configuration if you change mappings.

If I correctly understand, mapping is there to shortcut proxies in case of requests to localhost.
This seems to be more related to network level than to application level. Proxies are set by systems administrators like system configuration.
Does it make sense to put the mapping in /etc/hosts instead of print config.
Like this you could remove mapping in print config, and you do not have any problem with host header.

The solution from @arnaud-morvan looks nice for me. Any idea how/when to implement this?

Not required any more thanks to #350


VertexConsumer.vertex(double, double, double) -> pos

The vertex(double, double, double) and vertex(Matrix4f, float, float, float) methods should be renamed to pos. These methods only specify the position element of the vertex. pos makes it in line with the color and texture methods.
My guess is that it was named vertex to convey that it's a start of the vertex building. While it's true in vanilla, one can define a vertex format that doesn't have a position element at the beginning. In addition to that, the next method already serves as a delimiter.
The other vertex methods should not be renamed because they specify all elements of a vertex (and even call the next method to end the current vertex building).

I'd say this is quite impactful too, since it affects any mod doing rendering with VertexConsumer.

Given we've been doing some sort of rendering code refactor in snapshots it makes sense to fix there. Hmm, I can try make a PR from GitHub Mobile I guess? Or perhaps others with Enigma will do it first?

The name should be position than pos, as that's what we have in VertexFormatElement.Type and VertexFormats.

I'd prefer shorter names for builder methods especially when they have high traffic. I'm not sure if consistency is that important in this context.


AA Effect Is Not Removed When Token Is Removed From Combat

Foundry Version: 0.7.9
System: dnd5e 1.2.4
Potentially Relevant Installed Modules:

ATL 0.2.09
ActiveAuras 0.2.04
Dynamic-Effects-SRD 4.1.10
_CodeMirror 5.58.3-fvtt3
_mathjs 7.5.1-fvtt2
_sortablejs 1.10.2-fvtt1
about-time 0.1.66
combat-enhancements 0.1.8
combat-utility-belt 1.4.0
condition-automation 2.2.34
dae 0.2.59
dnd5e-helpers 1.10.1
foundry-combat-focus 1.4.0
itemacro v1.3.2
lib-wrapper <IP_ADDRESS>
midi-qol 0.3.93
times-up 0.1.5
tokenmagic 0.4.4

Summary:
When adding an Actor who has an Active Aura feature to combat the active effect for the aura is properly enabled. When removing the Actor's Token from combat, the Active Aura's effect is not removed.
Notes: Have only tested with Aura of Protection (DAE) so far.
Screenshot of Relevant Console Error:

Noted, fixed for 0.2.05


Feature: Bind BlackboardPlan variables to node properties in the Inspector

Summary
This PR introduces editor support for blackboard variable binding within the Inspector, enhancing the workflow for users working with BlackboardPlan variables. With this feature, you can bind any BlackboardPlan variable to a compatible node property (one with the same data type) that exists in the agent's packed scene directly in the Inspector.
How To Use
https://github.com/user-attachments/assets/8fd6e1f3-5649-499c-a843-1c278e7b6211

Remaining Tasks

[ ] Add documentation explaining binding and mapping.
[ ] Test in production.


How to exit out of a selection process?

const responses = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10].map((item) => {
  return createSelection(
    [
      {
        text: 'skip',
      },
      {
        text: 'higher',
      },
      {
        text: 'lower',
      },
    ],
    {
      headerText: `What should be done with number: ${item}?`,
    }
  )
})

console.log(responses)

If I enter the command [CTRL] + [C], it doesn't exit the running process as expected.
Instead, it continues throughout the list of items.

Thanks, is there a way to exit out of all of them though?

I have never seen the selection prompt used like this, but I suppose you could do the following:
import { createSelection } from 'bun-promptx'

[1, 2, 3, 4].map((item) => {

    const selection = createSelection(
        [
          {
            text: 'skip',
          },
          {
            text: 'higher',
          },
          {
            text: 'lower',
          },
          {
            text: 'exit',
          },
        ],
        {
          headerText: `What should be done with number: ${item}?`,
        }
    )

    if (selection.selectedIndex === 3) {
        process.exit(0);
    }

    console.log(selection)
})


Uncaught TypeError: Arguments to path.join must be strings

Steps to reproduce:

Start Atom and load a file (HTML in my case)

Atom Version: 0.170.0
System: Mac OS X 10.10.2
Thrown From: linter package, v0.9.1
Stack Trace
Uncaught TypeError: Arguments to path.join must be strings
At path.js:390

TypeError: Arguments to path.join must be strings
  at Object.exports.join (path.js:390:15)
  at LinterJshint.Linter.getNodeExecutablePath (/Users/cedric/.atom/packages/linter/lib/linter.coffee:114:10)
  at LinterJshint.Linter.getCmdAndArgs (/Users/cedric/.atom/packages/linter/lib/linter.coffee:90:25)
  at LinterJshint.Linter.lintFile (/Users/cedric/.atom/packages/linter/lib/linter.coffee:122:24)
  at /Users/cedric/.atom/packages/linter/lib/linter-view.coffee:138:18
  at Array.forEach (native)
  at /Users/cedric/.atom/packages/linter/lib/linter-view.coffee:137:18
  at Object.oncomplete (fs.js:93:15)

Commands

Config
{
  "core": {
    "followSymlinks": true,
    "disabledPackages": [
      "welcome",
      "metrics",
      "feedback",
      "archive-view",
      "open-on-github",
      "package-generator",
      "release-notes",
      "styleguide",
      "autosave",
      "deprecation-cop",
      "linter-csslint",
      "autocomplete-plus"
    ],
    "themes": [
      "atom-dark-ui",
      "specials-board"
    ],
    "audioBeep": false
  },
  "linter": {}
}

Installed Packages
# User
color-picker, v1.2.6
emmet, v2.3.0
file-icons, v1.4.4
linter, v0.9.1
linter-jshint, v0.1.0
linter-php, v0.0.11
specials-board, v0.6.1
tabs-to-spaces, v0.8.0

# Dev
No dev packages

/cc @atom/core

Dupe of #329. This is already fixed. Please upgrade!


Way to make LiveAppData only generate when the CMS doctype save event happens?

It seems that when one developer makes a doctype change on his or her machine, the other developers get doctype changes on their local builds. This causes confusion when they want to commit files as they have changes that they aren't expecting having not done anything in the CMS.
I expected LiveAppData to generate the files when you hit "Save" but only on that particular instance. I assume ModelsBuilder is just watching for doctype changes though rather than hooking into the event, since it seems to propagate out on all the other developer instances.
Is there any workaround for this? We may have to go back to the Visual Studio tool approach otherwise, which I don't like, as front-end developers particularly are confused by doctype changes on their instances.

Live models (whether it is Dll, AppData...) rebuilt on the "site" by listening to the (distributed) events. So in case of eg a load-balanced environment, where multiple servers hook into the same database to constitute one "site", models are re-generated on all servers.
If one dev modifying models impacts the other devs... does that mean that all your devs work on the same database, therefore creating some sort of load-balanced dev environment?
In this case I'm not sure how to deal with it, as dealing with "local but not distributed events" would require some refactoring both of ModelsBuilder and Umbraco Core.
What's wrong with the VS extension though?

Hi @zpqrtbnk, Thanks for the explanation, I can see why it's doing what it's doing now. In answer to your question, yes all of our devs work on the same database (unless they are working on a significantly different branch which would have it's own database). If the site is blind as to whether an event is "distributed" or from the CMS user hitting save on the local machine, then I can see why there's no straightforward solution.
There's nothing "wrong" with the VS extension, we just don't find it as convenient and we find it speeds up development to automate things, and also makes sure that developers keep minor changes checked in that they might otherwise forget. Purely a quality of life thing.

Closing this one


Microplois code uses python2 base and gym_micropolis in python3 and some conflicts

I have tried above code in Linux Centos 7(64 bit version) with gi package( I have changed to pgi ) is not compatible with python3 and some Kernel error .

** (test.py:27889): CRITICAL **: 05:43:09.256: g_function_info_get_flags: assertion 'GI_IS_FUNCTION_INFO (info)' failed
** (test.py:27889): CRITICAL **: 05:43:09.256: g_callable_info_get_n_args: assertion 'GI_IS_CALLABLE_INFO (info)' failed
** (test.py:27889): CRITICAL **: 05:43:09.256: g_callable_info_get_return_type: assertion 'GI_IS_CALLABLE_INFO (info)' failed
** (test.py:27889): CRITICAL **: 05:43:09.256: g_type_info_get_tag: assertion 'info != NULL' failed

Thanks for your interest! These look like they're caused while trying to render the game window using gtk. Have you tried running without the --render option? The more details the better.
Could you also explain what you've written in the title a little bit? I used to be only able to render the GUI in python2 but I've since updated so that everything should run in python3. However, some of the gtk stuff in micropolis/MicropolisCore still needs to be ported from gtk3 to gtk2 (e.g., gui renders with some missing pie menu icons).

I tried below steps

I could not make install as Swig3.0 compile issue, so tried directly by running python code
Used venv with python3, Installed cairo, goobject, pygtk ....
Unable to import gi library in python3, installed pgi and changed in all below python files \gym-micropolis-master\micropolis\MicropolisCore\src\pyMicropolis\micropolisEngine*.py

changed
import gi
gi.require_version('Gtk', '3.0')
to
import pgi
pgi.require_version('Gtk', '3.0')
from pgi.repository import Gtk

ran below code
python3 main.py --log-dir trained_models/acktr --algo acktr --model squeeze --num-process 24 --map-width 27 --render
It is running and creating some 23(did not counted exactly) blank windows and stays as it
Creating some excel files too.
server I have used - Centos 7(64-bit) with GPU support.
( More details I will update soon )

Kindly point of I am fundamentally wrong some where.

It sounds like you might actually be successfully running a training session, but that the pgi hack is resulting in all agents (rather than just the first) being rendered. Try without the --render option, and look for an entropy/reward/loss etc. printout in the console.
What went wrong with the gi import? Might be the only thing really standing in your way. I had a messy time installing that library as well.

Fixed gi import issue. cloned the latest code. Ran main.py.

Invalid argument - num_actions - fixed
CNN IN/OUT tensor not matching

Traceback (most recent call last):
File "main.py", line 374, in
main()
File "main.py", line 150, in main
icm_enabled=args.curiosity)
File "/home/nkolli/simcity/projects/manoj36/gym-micropolis/model.py", line 81, in act
value, actor_features, rnn_hxs = self.base(inputs, rnn_hxs, masks)
File "/home/nkolli/simcity/projects/manoj36/lib/python3.6/site-packages/torch/nn/modules/module.py", line 489, in call
result = self.forward(*input, **kwargs)
File "/home/nkolli/simcity/projects/manoj36/gym-micropolis/model.py", line 681, in forward
x = torch.cat((x, x_i), 1)
RuntimeError: invalid argument 0: Sizes of tensors must match except in dimension 1. Got 13 and 12 in dimension 2 at /pytorch/aten/src/THC/generic/THCTensorMath.cu:83

That's good news. I've just fixed a line of code in the squeeze model which made an assumption about the map-width, so try updating your copy of the repo and trying again.
You might also want to try running with '--model fractal' and '--n-recs 3'. Or, with '--model fixed'. The "model" option determines the structure of the neural network we are attempting to train. I believe the fractal neural architecture is the quickest and most effective learner of the task thus far.

Thanks. I fixed one minor bug and now fractal model is running....No idea how long it takes....
CSV is generating with 2 header string lines(1 comment and i header column) so I added one more f.readline() in visualize.py ( in load_data method )
Last console output ( still running.........)
Updates 17530, num timesteps 2103720, FPS 323
Last 10 training episodes: mean/median reward 1072.4/685.9, min/max reward 2.8/2863.4
dist entropy 0.4, val/act loss 1.4/-0.1

Nice. Here is the paper on which I based the fractal implementation, if you're curious: https://arxiv.org/abs/1605.07648. You can also train with --drop-path, and --eval-interval 100, for ex. (to evaluate, log and visualize the deterministic performace of the entire network and of the individual fractal 'columns' - see below) and run inference on particular subnetworks (columns from 0 through [n-recs - 1]) using python3 enjoy.py --load-dir some/directory --active-col 2 --map-width 16.
Training runs for 10M frames by default (control this with the --num-frames option). But if you're curious, you can run inference using enjoy.py --render and having it load the weights you're currently training (and you can run this on a variety of map-sizes, and with user interaction, to see how well the model is generalizing). Given the reward you're already seeing in the printout, your model's probably learnt how to make basic swaths of low-density residential, or something like that, but have a look.
What follows is some unsolicited background info, in case you want to wade into model.py yourself.
As for the motivation behind the fractal network: I was finding that using a single repeated ('recursive') convolution (as in the 'fixed' model) yielded good results (e.g., the gif in the readme) - so long as it had a skip connection. Each column of the fractal model is exactly such a repeated convolution (with each column comprising a different number of recursions, by factors of 2), though they intertwine with one another at regular intervals in the overall model; these built-in skip connections, as it were, seem to improve speed and stability of learning, upon somewhat cursory comparison.
Meanwhile, I've been trying to conceive a way to extend this notion of recursive convolution to a model that produces a compressed representation of the map (the 'squeeze' model), so that we could scale to really big map-sizes more easily (it also seems desirable for the agent to be able to plan at the 'neighbourhood' or 'quadrant' scale, though, interestingly, even models that never shrink the map size exhibit certain seemingly high-level behaviour (i.e., neighbourhoods of particular zone-types), especially when repeated convolution allows distant tiles to affect one another during a single forward pass). If we take the fractal model, and, instead of adding a single fixed-size convolution with each recurrence, as in the paper, add a sequence of repeated convolutions which squeeze and unsqueeze the map to/from some fraction of its original size (using strided convolutions, for example), then each column of the fractal network is such a squeeze network (or multiple such squeeze networks stacked sequentially, if we're dealing with one of the internal columns).
Though such 'fractal squeeze' models involves less direct skip connections, their overall performance seems to be on par with that of regular fractal models, though individual squeeze columns seem to fare better than their non-squeeze counterparts upon deterministic evaluation - which makes sense, given that the non-squeeze column [n-recs - 1] ('leftmost' in the figure in the paper), for example, only allows adjacent tiles to affect one another (since it comprises only a single convolution), whereas a squeeze-unsqueeze sequence can have potentially map-wide range, without either too many additional parameters or recursions over a too-large activation space.
Anyway, enjoy the repo and be in touch with questions or observations. I'm working on a similar gym wrapper for OpenTTD and hope to have that up and running soon as well.

Thanks for a detailed explanation. I have trained fractal model and tried enjoy.py with --render but it builds only 1 block and stops.
BASE NETWORK:
MicropolisBase_fixed(
(skip_compress): Conv2d(32, 15, kernel_size=(1, 1), stride=(1, 1))
(conv_0): Conv2d(32, 64, kernel_size=(1, 1), stride=(1, 1))
(conv_1): Conv2d(64, 64, kernel_size=(5, 5), stride=(1, 1), padding=(2, 2))
(conv_2_0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))
(critic_compress): Conv2d(79, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))
(critic_downsize_0): Conv2d(64, 64, kernel_size=(2, 2), stride=(2, 2))
(actor_compress): Conv2d(79, 19, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))
(critic_conv): Conv2d(64, 1, kernel_size=(1, 1), stride=(1, 1))
)
/home/nkolli/simcity/projects/manoj36/gym-micropolis/micropolis/MicropolisCore/src/images/tileEngine/tiles.png
/home/nkolli/simcity/projects/manoj36/gym-micropolis/micropolis/MicropolisCore/src/images/tileEngine/tiles.png
/home/nkolli/simcity/projects/manoj36/gym-micropolis/micropolis/MicropolisCore/src/images/tileEngine/tiles.png
it print 3 times the tiles.png and stops there. Any clue ? Also funds are not reducing as it blocks. some thing is wrong.

Judging by the model printout, it looks like the enjoy.py script is loading up the wrong model to run inference on. Run enjoy with the same model-related arguments that were passed during training. So —model fractal and —n-recs 3 in your case, I believe.

As mentioned I ran with a2c with fractal for 5M,10M,20M steps. But none of them build the entire city. It prints only one block and stays there. I tried debugging the enjoy.py, but no luck so far.
Last console
Updates 41660, num timesteps 4999320, FPS 674
Last 10 training episodes: mean/median reward 11717.0/10134.7, min/max reward 7990.4/18772.5
dist entropy 7.0, val/act loss 0.7/0.3
Looks like it gets best rewards.
python enjoy.py --algo a2c --model fractal --n-recs 3 --num-process 24 --map-width 27 --load-dir ./gym-micropolis/trained_models/a2c/fractal/w27/5M/20190209132608 --render
Any thoughts ? Sure I have used same model and algo and path is correct to pick env.pt file

That's very odd. Are you running on the same --map-width as in training? But then again, trained models can normally generalize pretty well to larger map sizes. Try making some builds and seeing if the agent responds to them (right-click to bring up pie menu (sorry the icons are missing that's a simple bug that will eventually get fixed). And yes, be absolutely sure you're pointing to the right --load-dir, preferably by dragging the folder onto the console. Inference is working fine on my end, even with different map-sizes, and even passing superfluous arguments (--num-process --algo --model --n-recs should not change anything during inference).
In the interim, now that the gi import situation is fixed, you can render while training, and should be able to see the agent doing comprehensible things as it begins to achieve reward.

Thanks. Using pie menu I tried building some blocks, but succeeded only in roads,rail,park etc and residential,commercial etc  not building. Also while clicking map --> Residential Zones/Commercial Zones/etc.. (If I change the zone) it throws a "Segmentation fault (core dumped)" error. some C/python code failes. Not sure this is gtk library issue.


Any Methods to Accelerate Downloading?

DO NOT REMOVE OR SKIP THE ISSUE TEMPLATE

[X] I understand that I will be blocked if I intentionally remove or skip any mandatory* field

Checklist

[X] I'm asking a question and not reporting a bug or requesting a feature
[X] I've looked through the README
[X] I've verified that I'm running yt-dlp version 2023.07.06 (update instructions) or later (specify commit)
[X] I've searched known issues and the bugtracker for similar questions including closed ones. DO NOT post duplicates
[X] I've read the guidelines for opening an issue

Please make sure the question is worded well enough to be understood
I am downloading a dataset on our server (Ubuntu 20.4, Python 3.10.9), and I have updated yt-dlp to the latest version according to other issues. Also, I am not using any VPN.
The dataset downloading code is:
down_video = " ".join([             "yt-dlp",             proxy_cmd,             '-f', "'bestvideo[ext=mp4]+bestaudio[ext=m4a]/bestvideo+bestaudio'",             '--skip-unavailable-fragments',             '--merge-output-format', 'mp4',             "https://www.youtube.com/watch?v=" + ytb_id, "--output",             video_path, "--external-downloader", "aria2c",             "--external-downloader-args", '"-x 16 -k 1M"'         ])
From https://github.com/celebv-text/CelebV-Text/blob/main/download_and_process.py#L10C26-L10C32.
However, I checked that the internet speed is around 250MB/s,

Retrieving speedtest.net configuration...
Testing from Cogent Communications (<IP_ADDRESS>)...
Retrieving speedtest.net server list...
Selecting best server based on ping...
Hosted by Open5G Inc. (Atherton, CA) [38.80 km]: 1800000.0 ms
Testing download speed................................................................................
Download: 2023.72 Mbit/s
Testing upload speed......................................................................................................
Upload: 1794.78 Mbit/s

but the downloading speed can only reach approximately 14 MB/s as shown in the output below.
Since the dataset is extremely large, it might take more than 200 days for me to download the whole dataset. I am wondering if there are any methods for me to accelerate the downloading process. Thanks!
Provide verbose output that clearly demonstrates the problem

[X] Run your yt-dlp command with -vU flag added (yt-dlp -vU <your command line>)
[ ] If using API, add 'verbose': True to YoutubeDL params instead
[X] Copy the WHOLE output (starting with [debug] Command-line config) and insert it below

Complete Verbose Output
~/.local/bin/yt-dlp  -f 'bestvideo[ext=mp4]+bestaudio[ext=m4a]/bestvideo+bestaudio' --skip-unavailable-fragments --merge-output-format mp4 https://www.youtube.com/watch?v=Sq3deFo7brY --output ./downloaded_celebvtext/raw/Sq3deFo7brY.mp4 --external-downloader aria2c --external-downloader-args "-x 16 -k 1M"
WARNING: External Downloader arguments given without specifying name. The arguments will be given to aria2c
[youtube] Extracting URL: https://www.youtube.com/watch?v=Sq3deFo7brY
[youtube] Sq3deFo7brY: Downloading webpage
[youtube] Sq3deFo7brY: Downloading ios player API JSON
[youtube] Sq3deFo7brY: Downloading android player API JSON
[youtube] Sq3deFo7brY: Downloading m3u8 information
[info] Sq3deFo7brY: Downloading 1 format(s): 625+140
[hlsnative] Downloading m3u8 manifest
[hlsnative] Total fragments: 85
[download] Destination: ./downloaded_celebvtext/raw/Sq3deFo7brY.f625.mp4
[download] 100% of  924.99MiB in 00:02:20 at 6.57MiB/s
[download] Destination: ./downloaded_celebvtext/raw/Sq3deFo7brY.f140.m4a
[download] 100% of    6.56MiB in 00:00:00 at 8.96MiB/s
[Merger] Merging formats into "./downloaded_celebvtext/raw/Sq3deFo7brY.mp4"
Deleting original file ./downloaded_celebvtext/raw/Sq3deFo7brY.f625.mp4 (pass -k to keep)
Deleting original file ./downloaded_celebvtext/raw/Sq3deFo7brY.f140.m4a (pass -k to keep)
~/.local/bin/yt-dlp  -f 'bestvideo[ext=mp4]+bestaudio[ext=m4a]/bestvideo+bestaudio' --skip-unavailable-fragments --merge-output-format mp4 https://www.youtube.com/watch?v=_Mb6veVt5-g --output ./downloaded_celebvtext/raw/_Mb6veVt5-g.mp4 --external-downloader aria2c --external-downloader-args "-x 16 -k 1M"
WARNING: External Downloader arguments given without specifying name. The arguments will be given to aria2c
[youtube] Extracting URL: https://www.youtube.com/watch?v=_Mb6veVt5-g
[youtube] _Mb6veVt5-g: Downloading webpage
[youtube] _Mb6veVt5-g: Downloading ios player API JSON
[youtube] _Mb6veVt5-g: Downloading android player API JSON
[youtube] _Mb6veVt5-g: Downloading m3u8 information
[info] _Mb6veVt5-g: Downloading 1 format(s): 625+140
[hlsnative] Downloading m3u8 manifest
[hlsnative] Total fragments: 170
[download] Destination: ./downloaded_celebvtext/raw/_Mb6veVt5-g.f625.mp4
[download] 100% of  808.05MiB in 00:03:26 at 3.92MiB/s
[download] Destination: ./downloaded_celebvtext/raw/_Mb6veVt5-g.f140.m4a
[download] 100% of   13.99MiB in 00:00:01 at 9.75MiB/s
[Merger] Merging formats into "./downloaded_celebvtext/raw/_Mb6veVt5-g.mp4"
Deleting original file ./downloaded_celebvtext/raw/_Mb6veVt5-g.f625.mp4 (pass -k to keep)
Deleting original file ./downloaded_celebvtext/raw/_Mb6veVt5-g.f140.m4a (pass -k to keep)
~/.local/bin/yt-dlp  -f 'bestvideo[ext=mp4]+bestaudio[ext=m4a]/bestvideo+bestaudio' --skip-unavailable-fragments --merge-output-format mp4 https://www.youtube.com/watch?v=84lxCljLsys --output ./downloaded_celebvtext/raw/84lxCljLsys.mp4 --external-downloader aria2c --external-downloader-args "-x 16 -k 1M"
WARNING: External Downloader arguments given without specifying name. The arguments will be given to aria2c
[youtube] Extracting URL: https://www.youtube.com/watch?v=84lxCljLsys
[youtube] 84lxCljLsys: Downloading webpage
[youtube] 84lxCljLsys: Downloading ios player API JSON
[youtube] 84lxCljLsys: Downloading android player API JSON
[youtube] 84lxCljLsys: Downloading m3u8 information
[info] 84lxCljLsys: Downloading 1 format(s): 628+140
[hlsnative] Downloading m3u8 manifest
[hlsnative] Total fragments: 185
[download] Destination: ./downloaded_celebvtext/raw/84lxCljLsys.f628.mp4
[download] 100% of    2.07GiB in 00:02:39 at 13.28MiB/s
[download] Destination: ./downloaded_celebvtext/raw/84lxCljLsys.f140.m4a
[download] 100% of   14.49MiB in 00:00:01 at 12.04MiB/s
[Merger] Merging formats into "./downloaded_celebvtext/raw/84lxCljLsys.mp4"
Deleting original file ./downloaded_celebvtext/raw/84lxCljLsys.f628.mp4 (pass -k to keep)
Deleting original file ./downloaded_celebvtext/raw/84lxCljLsys.f140.m4a (pass -k to keep)

That is not a complete verbose log. Also it looks like yt-dlp is not using aria2c as an external downloader.

--merge-output-format --external-downloader aria2c

Maybe yt-dlp is not using aria2c as downloader because --merge-output-format takes an argument? But I couldn't say without a proper log
You may have better results with -N 16 --extractor-args "youtube:formats=dashy" instead of aria2c

That is not a complete verbose log. Also it looks like yt-dlp is not using aria2c as an external downloader.

--merge-output-format --external-downloader aria2c

Maybe yt-dlp is not using aria2c as downloader because --merge-output-format takes an argument? But I couldn't say without a proper log
You may have better results with -N 16 --extractor-args "youtube:formats=dashy" instead of aria2c

Thank you very much. I have updated the issue. I will also try your advice.

It's because the smaller formats are downloaded as a single fragment, while with the larger formats you can download multiple fragments concurrently
[hlsnative] Total fragments: 114

[dashsegments] Total fragments: 1

but some of the videos are still downloaded with 10+MB/s.

How fast do you want a 10MB video to download😂
Anyway, you might be interested in a program called squid-dl, which lets you download multiple videos at once. I don't know anything about it though


ChaosDAO Community Wishlist

GM, I am acting as the meatspace vehicle for ChaosDAO, here is a list of changes that we would like to see. https://github.com/paritytech/polkadot-sdk/issues/3901 is the impetus for this.
These are in no particular order, and we understand that some may be more important than others, and some will require significant code changes to implement.
I will try to add some additional context from our discussions

RFC 35 Implementation - More Liquid Democracy: Conviction Voting Delegation Modifications polkadot-fellows/RFCs#35 – we have been told by members of the Polkadot Technical Fellowship (and others) that this will require significant code changes to implement, however we do believe that a more liquid form of voting is better.
Nomination Pool Stakers being able to vote and delegate in Polkadot OpenGov – some of our members have been stressing the importance of this for a while, and we do understand that this is being worked on, however, we believe it may be beneficial if other members of the Polkadot Technical Fellowship help to expedite this change.
Collaborative Decision Deposits – Some of the Decision Deposits for particular tracks are too high for the average community member to be able to post. If Decision Deposits were collaborative (i.e. multiple people can contribute towards it) then the broader community can feel more empowered to propose refs.
Reducing proxy.CreatePure deposit – the current deposit of 20 DOT is too high for the average DOT holder, this results in them not being able to use Pure Proxies. It would be great if this could be lowered to 2 DOT for example. Some of our members have reached out to Polkadot Technical Fellowship Fellows (of higher ranks) and they have stated that the 20 DOT value is arbitrary and can be changed.
Reducing generic proxy deposit (i.e. assigning gov proxy to your account) – see above pretty much
Reducing multisig txn deposit – a lot of our members often help other members of the community troubleshooting issues with multisigs, and by far the main issue is that people don't have 20 DOT on the account they are using which is part of a multisig. We feel like this number is arbitrary and should be lowered to 2 DOT for example.
Change it so that nomination pools as a whole have permissionless compounding, not so that individual nominators have to set it – most end users would like their staking rewards to be compounded. If they do not wish for them to be compounded then they should be able to set a different address as the staking rewards destination. Currently, as far as we understand it, someone on the network has to execute these compounding transactions which is rather expensive.
Lower treasury spend period from 24 days to something like 7 days (or even 24 hours, each ref goes through a really long approval process, this extra time delay is just prohibitive) - the spend period currently adds time delays for businesses building on top of Polkadot - we do understand that this affects inflation and burn mechanics.
Lower child bounty payout delays (to 24 hrs) – Bounties are a way for the community to be able to assign a set of curators to a specific portion of treasury funds – the current payout delay adds extra friction to those wishing to get funded from bounties and has caused issues in the past.
Lower Identity Deposit – we understand that on-chain identities are moving to a systems parachain, but we would like to ensure that the deposit is lowered from 20 DOT to something like 1 DOT, 20 DOT is simply too high.

I am posting this on behalf of a community and the above doesn't necessarily reflect my own views

Intentional duplicate of https://github.com/paritytech/polkadot-sdk/issues/4193 ?

@ggwpez https://github.com/paritytech/polkadot-sdk/issues/4193#issuecomment-2063937896

But it appears twice in the wishlist now: https://github.com/paritytech/polkadot-sdk/issues/3901#issuecomment-2063731459 with different votes...


inconsistent arena handling in area_linux

In GitLab by @perarnau on Mar 23, 2018, 10:24
Linux areas receive an arena template from the user, and use it to create an internal arena pool, managed by area_linux_manager types.
The current code reuse the provided template, instead of copying it, which is probably not what we want. The main area_linux code also calls jemalloc_destroy directly on the arena on aml_area_destroy, which is obviously wrong, since we're destroying a pointer we haven't created, and also happening in the wrong place, as the manager should do that.

In GitLab by @perarnau on Mar 25, 2019, 11:14
mentioned in merge request !38
By Swann Perarnau on 2019-03-25T16:14:30 (imported from GitLab project)

In GitLab by @perarnau on Mar 27, 2019, 13:55
mentioned in merge request !43
By Swann Perarnau on 2019-03-27T18:55:51 (imported from GitLab project)

In GitLab by @perarnau on Mar 27, 2019, 13:56
mentioned in commit 4c6b449000f806ecd035adb1124eb77fb28e7d3d
By Swann Perarnau on 2019-03-27T18:56:39 (imported from GitLab project)

In GitLab by @perarnau on Mar 27, 2019, 13:56
closed via merge request !43
By Swann Perarnau on 2019-03-27T18:56:42 (imported from GitLab project)

In GitLab by @perarnau on Aug 6, 2019, 13:56
mentioned in commit 4c6b449000f806ecd035adb1124eb77fb28e7d3d


Should the domain of inv be bounded?

Description:
I expect to resolve this quickly and get it into the #277 epic for alpha.
Steps to reproduce:

current develop deploy playground
inv(normal(0,1), 1e2)

Expected behavior:
Input validation to catch this and bubble up an error
What I got instead:
141

Yea, this seems like a bug to me.

Also seems like a bug. @quinn-dougherty, do you want me to fix it myself, or were you tagging me for confirmation?

Tagged you for your opinion about user experience and semantics. Since consensus is that it's a bug I'll unassign you.

I think we should throw an error where a value below 0 or above 1 is requested.

Should this be -Inf/Inf for 0 and 1 on unbounded distributions, or throw an error?
Related: #1194, on whether we want to have Inf and NaN in Squiggle float semantics.


MSL: using the variable identifier as an argument to refract built-ins fails on macOS 10.14

On MacOS 10.14, I tried to convert SPIR-V to MSL and found an issue that when using a float variable identifier as the argument of a refract function, the MSL compiler gives the following error:
result.msl:15:15: error: no matching function for call to 'refract'
    float b = refract(1.0, 1.0, a);
              ^~~~~~~

The GLSL fragment shader:
void main()
{
    float a = 1.0;
    float b = refract(1.0, 1.0, a);
    _GLF_color = vec4(10.0);
}

The MSL shader obtained by SPIRV-Cross:
fragment main0_out main0()
{
    main0_out out = {};
    float a = 1.0;
    float b = refract(1.0, 1.0, a);
    out._GLF_color = float4(10.0);
    return out;
}

Versions:

SPIRV-Cross: git-41399fc899b9b941bc17810a72d9aa8750bb18e9 (Most recent version of this writing)
glslangValidator: Glslang Version: 7.12.3226

Steps to reproduce:

Convert the GLSL shader to SPIR-V using glslangValidator with the command glslangValidator -V sample.frag -o sample.spv
Convert the SPIR-V to MSL using SPIRV-Cross with the command spirv-cross --msl sample.spv --output result.msl
Build a Metal library with the command xcrun --sdk macosx10.14 metal -x metal -std=macos-metal1.2 result.msl

Note that before running SPIRV-Cross, I also used spirv-val to check that the SPIR-V produced by glslangValidator is valid.
This Archive.zip contains the original fragment shader, the associated SPIR-V, and MSL shader.
Issue found using GraphicsFuzz.

That is because MSL lacks overloads of refract() for scalars. Most of the functions in <metal_geometric>, like the length() function (as you discovered in #1047), lack scalar overloads.

Odd that this is even allowed in SPIR-V, another easy fix I guess ...


GH-35177: [Docs][Python] WARNING: autosummary: failed to import serialize

Closes: #35177

@kou the docs build is without warnings now: https://github.com/apache/arrow/actions/runs/4720245538/jobs/8372049452?pr=35182

@github-actions crossbow submit test-ubuntu-default-docs

Sorry for triggering that job, I just created an issue because I thought it was not happening on main but on the 12.0.0 release but it seems to happen on main too. The issue is unrelated to this PR.


Added private option for activity copies [#102768308]

I had this done last night but ran out of time to push it.
To enable private ITSI copies just add ?private=1 or ?private=true to the create activity button in the ITSI project page.

This is becoming really tangled, but we couldn't come up with a better solution given the current timeframe.


[Feature]:  Remove calculateCameraBounds from the client

Describe the solution you'd like
Once this method has been completed by the server, remove it from the client

Done


Accept multiple values for header elements

allow for multiple titles, associated filenames, etc for each row, separated by some deliminator.
likely should not be ',' due to the TITLE field.

enforced that there should only ever be one DATE
TITLE is hardcoded to use | as a delimiter as opposed to , due to regex idiosyncrasy.

other than that, the others are set to split on a `Parser.SPLIT_HEADER


Disable flaky test in ProjectDependenciesTest

This test failed a lot of times lately, see:
https://scala-ci.typesafe.com/job/scala-2.11.x-integrate-ide/837/console
https://scala-ci.typesafe.com/job/scala-2.11.x-integrate-ide/835/console
https://scala-ci.typesafe.com/job/scala-2.11.x-integrate-ide/829/console
https://scala-ci.typesafe.com/job/scala-2.11.x-integrate-ide/827/console
https://scala-ci.typesafe.com/job/scala-2.11.x-integrate-ide/823/console
https://scala-ci.typesafe.com/job/scala-2.11.x-integrate-ide/816/console

It is weird that it failed only in the last days, did anything change that made this test flaky?

Yes, I've also seen these failing builds. LGTM

Looking only at dates, it started failing after merging https://github.com/scala-ide/scala-ide/pull/933, but maybe is it caused just by some changes in the CI configuration, if there were any? (I mean some new, specific state on Jenkins)?

By the way, maybe would it be possible to have such tests marked in that way that they would be ignored/skipped (I assume that temporarily) only at Scala's Jenkins (where they are causing problems), but to still run them on dev machines and on Scala IDE's Jenkins?
Some env variable or something like that.

Obviously it's a question whether Scala's Jenkins simply discovers some corner cases which should be fixed at some point.

That commit introduced some delays into build process (looking into all comments for TODOs). How can I check what exactly failed (which assertion) on Scala Jenkins?
Btw - after my changes tests from ProjectDependenciesTest do not run at all on Windows, as deleting projects after test fails with "could not delete file". I have no idea how changing build times prevents one from deleting files.

The interesting thing is that the test does not fail, it errors (meaning an exception was thrown). I'm trying to look through the swaths of logs for a hint on what went wrong

Some details how it's related to #933: https://github.com/scala-ide/scala-ide/pull/933#issuecomment-98633087

@lrytz thanks for digging out the stack trace, I don't know how I missed it. I guess we can close this PR now?

It looks like it should be good – I can't say right now because our jenkins slaves won't start :) It's a small fix (upgrade the default java due to https://jenkins-ci.org/content/good-bye-java6), but I don't all the tools to get it into our infra.

Let's wait for another few builds. Anyway for sure it's better - https://scala-ci.typesafe.com/job/scala-2.11.x-integrate-ide/871/

I'm fine closing this, since the build passed. The test was not flaky.


Make database corruption issue more explicit in Besu logs at startup

One of our customer faced issues when a database corruption happened. Having more details (logs?) when Besu can't start because of a corrupted database and how to recover (if possible) would be great.
Originally raised by @NicolasMassart

@NicolasMassart do we know what the user ended up seeing? Some types of corruption aren't detectable at start-time. Only when the data is missing. Closing for now unless you have more info.

I don't have the ticket history for this as it's too old and we made some migration in Zendesk since.
But basically it was just displaying a stack trace instead of a clear message as "Your Besu database is corrupted and Besu can't start. Please repair [link to some tutorial to repair]" or alike.

Given the age, I wouldn't be surprised if this was pruning related and has since been fixed. We haven't seen those corruptions in a long while.

For what I recal it was corrupted due to a disk space saturation so the DB was not able to save logs form memory. It was very hard to reproduce as it requires some very bad luck...


Report all errors as messages not as Exceptions

This improves the UX and makes thing more scriptable and more UN*X-like.
Tested by manually running these failing commands:
❯ ./lakefs_export.py --branch asdf --commit_id sdf abc def
Cannot set both branch and commit

❯ ./lakefs_export.py abc def
Must set one of branch, commit

❯ ./lakefs_export.py --prev_commit_id asdf --commit_id sdf abc def
Cannot export diff between two commits.

Fixes #4912.

Thanks muchly!


Don’t convert “--” to “—”

Disable remark-smartypants’s dashes option so that -- is preserved (important for CLI flags for example.)

LGTM!


Automatically set x-axis max in a scatter-linechart

Say I have the following bit of code:
        LineChart chart = new LineChart();

        LineDataset dataset = new LineDataset();

        DataPoint dp1 = new DataPoint();
        dp1.setX(0); dp1.setY(20);

        DataPoint dp2 = new DataPoint();
        dp2.setX(1); dp2.setY(30);

        DataPoint dp3 = new DataPoint();
        dp3.setX(2); dp3.setY(40);

        dataset.setDataPoints(dp1, dp2, dp3);

        chart.getData().setDatasets(dataset);

        return chart;

When I draw this chart, the y-axis is automatically scaled for the datapoints to fit on it (In this example, from 20 to 40). However, the x-axis is not: this seems to always go from 0 to 1.
I can fix this by adding:
        Axis axis = new CartesianLinearAxis(chart);
        ((CartesianLinearAxis) axis).getTicks().setMin(0);
        ((CartesianLinearAxis) axis).getTicks().setMax(2);

        chart.getOptions().getScales().setXAxes(axis);

My question is however: is it by design that the y-axis automatically scales, and the x-axis does not? Or is there a way to make the x-axis scale automatically?
Having this option would prevent us having to manually keep track of the "lowest" and "highest" x-value, and afterwards creating a new axis just to be able to properly scale.

@niekvanderkooy y-axis and x-axis scale automatically. Creating own axes you can change behaviors.
About your example, be aware the DataPoints can be used in Line or Bar charts when you want to use TimeSeries.
Instead, Bubble or Scatter charts are based on DataPoints.
Seeing the example, I think you could:

Scatter chart when the points are what you set.  In your sample, change LineChart and LineDataset into ScatterChart and ScatterDataset
Line chart but don't use DataPoints but "labels" and "data":

LineChart chart = new LineChart();

LineDataset dataset = new LineDataset();
// set data
dataset.setData(20, 30, 40);
// set labels
chart.getData().setLabels("0", "1", "2");
chart.getData().setDatasets(dataset);

@niekvanderkooy Thank you for clarification.
A scatter chart is a line chart with the difference that by default the "showLines" is set to false.
Nevertheless the Scatter options allow you to set this value:
ScatterChart chart = new ScatterChart();

chart.getOptions().setShowLines(true);

ScatterDataset dataset = new ScatterDataset();

DataPoint dp1 = new DataPoint();
dp1.setX(0); dp1.setY(20);

DataPoint dp2 = new DataPoint();
dp2.setX(1); dp2.setY(30);

DataPoint dp3 = new DataPoint();
dp3.setX(2); dp3.setY(40);

dataset.setDataPoints(dp1, dp2, dp3);

chart.getData().setDatasets(dataset);

return chart;

Here is the result:

Does that look like what you need?

@niekvanderkooy About time series, see the Charba Showcase, select "Time series charts".
Bar TimeSeries sample, see here.
Line TimeSeries sample, see here.
The Charba wiki is still under construnction (sorry!).

Ah, this indeed does what I was looking for, thanks!
I think I was confused due to the ScatterDataset also having a setShowLines option, which is always forced to false. I did not realise I could also achieve the showing of a line through the ScatterOptions.
Thanks for your help!