Install instructions Hello World does not work with Fakebackend

URL to the relevant documentation
The link to hello world on this page https://docs.quantum.ibm.com/start
takes you to https://docs.quantum.ibm.com/start/hello-world with the code that did not work using Qiskit 1.0
Select all that apply

[ ] typo
[X] code bug
[X] out-of-date content
[ ] broken link
[ ] other

Describe the fix.
# !!!COMMENTED CHANGES USING !!! AND CAPS IN THE ORIGINAL CODE BELOW

# Construct the Estimator instance we want to use.

# If you did not previously save your credentials, use the following line instead:
# service = QiskitRuntimeService(channel="ibm_quantum", token="<MY_IBM_QUANTUM_TOKEN>")
service = QiskitRuntimeService()

# Run on the least-busy backend you have access to
#backend = service.least_busy(simulator=False, operational=True)

# Use the following code instead if you want to run on a simulator:
# !!! USED DIFFERENT FAKE BACKEND
from qiskit_ibm_runtime.fake_provider import FakeManilaV2
backend = FakeManilaV2()

# !!!ADDING THIS LINE IN ATTEMPT TO SOLVE OBERVABLE ERROR
num_qubits = None

estimator = Estimator(backend)
estimator.options.resilience_level = 1
estimator.options.default_shots = 5000

# Convert to an ISA circuit and layout-mapped observables.
# !!!ADDED num_qubits into observables like

pm = generate_preset_pass_manager(backend=backend, optimization_level=1)
isa_circuit = pm.run(qc)
observables = [
    observable.apply_layout(isa_circuit.layout,num_qubits) for observable in observables
]

@Sieglinde-IBMQuantum to confirm, did you get the following error when you just uncommented the lines
---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
Cell In[3], [line 14](vscode-notebook-cell:?execution_count=3&line=14)
     [11](vscode-notebook-cell:?execution_count=3&line=11) from qiskit_ibm_runtime.fake_provider import FakeCairoV2
     [12](vscode-notebook-cell:?execution_count=3&line=12) backend = FakeCairoV2()
---> [14](vscode-notebook-cell:?execution_count=3&line=14) estimator = Estimator(backend)
     [15](vscode-notebook-cell:?execution_count=3&line=15) estimator.options.resilience_level = 1
     [16](vscode-notebook-cell:?execution_count=3&line=16) estimator.options.default_shots = 5000

File [~/Documents/documentation/.venv/lib/python3.11/site-packages/qiskit_ibm_runtime/estimator.py:132](https://file+.vscode-resource.vscode-cdn.net/Users/frankharkins/Documents/documentation/docs/start/~/Documents/documentation/.venv/lib/python3.11/site-packages/qiskit_ibm_runtime/estimator.py:132), in EstimatorV2.__init__(self, backend, session, options)
    [130](https://file+.vscode-resource.vscode-cdn.net/Users/frankharkins/Documents/documentation/docs/start/~/Documents/documentation/.venv/lib/python3.11/site-packages/qiskit_ibm_runtime/estimator.py:130) BaseEstimatorV2.__init__(self)
    [131](https://file+.vscode-resource.vscode-cdn.net/Users/frankharkins/Documents/documentation/docs/start/~/Documents/documentation/.venv/lib/python3.11/site-packages/qiskit_ibm_runtime/estimator.py:131) Estimator.__init__(self)
--> [132](https://file+.vscode-resource.vscode-cdn.net/Users/frankharkins/Documents/documentation/docs/start/~/Documents/documentation/.venv/lib/python3.11/site-packages/qiskit_ibm_runtime/estimator.py:132) BasePrimitiveV2.__init__(self, backend=backend, session=session, options=options)
    [134](https://file+.vscode-resource.vscode-cdn.net/Users/frankharkins/Documents/documentation/docs/start/~/Documents/documentation/.venv/lib/python3.11/site-packages/qiskit_ibm_runtime/estimator.py:134) if self._service._channel_strategy == "q-ctrl":
    [135](https://file+.vscode-resource.vscode-cdn.net/Users/frankharkins/Documents/documentation/docs/start/~/Documents/documentation/.venv/lib/python3.11/site-packages/qiskit_ibm_runtime/estimator.py:135)     raise NotImplementedError("EstimatorV2 is not supported with q-ctrl channel strategy.")

File [~/Documents/documentation/.venv/lib/python3.11/site-packages/qiskit_ibm_runtime/base_primitive.py:121](https://file+.vscode-resource.vscode-cdn.net/Users/frankharkins/Documents/documentation/docs/start/~/Documents/documentation/.venv/lib/python3.11/site-packages/qiskit_ibm_runtime/base_primitive.py:121), in BasePrimitiveV2.__init__(self, backend, session, options)
    [115](https://file+.vscode-resource.vscode-cdn.net/Users/frankharkins/Documents/documentation/docs/start/~/Documents/documentation/.venv/lib/python3.11/site-packages/qiskit_ibm_runtime/base_primitive.py:115) self._service = (
    [116](https://file+.vscode-resource.vscode-cdn.net/Users/frankharkins/Documents/documentation/docs/start/~/Documents/documentation/.venv/lib/python3.11/site-packages/qiskit_ibm_runtime/base_primitive.py:116)     QiskitRuntimeService()
    [117](https://file+.vscode-resource.vscode-cdn.net/Users/frankharkins/Documents/documentation/docs/start/~/Documents/documentation/.venv/lib/python3.11/site-packages/qiskit_ibm_runtime/base_primitive.py:117)     if QiskitRuntimeService.global_service is None
    [118](https://file+.vscode-resource.vscode-cdn.net/Users/frankharkins/Documents/documentation/docs/start/~/Documents/documentation/.venv/lib/python3.11/site-packages/qiskit_ibm_runtime/base_primitive.py:118)     else QiskitRuntimeService.global_service
    [119](https://file+.vscode-resource.vscode-cdn.net/Users/frankharkins/Documents/documentation/docs/start/~/Documents/documentation/.venv/lib/python3.11/site-packages/qiskit_ibm_runtime/base_primitive.py:119) )
    [120](https://file+.vscode-resource.vscode-cdn.net/Users/frankharkins/Documents/documentation/docs/start/~/Documents/documentation/.venv/lib/python3.11/site-packages/qiskit_ibm_runtime/base_primitive.py:120) if self._service.channel != "ibm_cloud":
--> [121](https://file+.vscode-resource.vscode-cdn.net/Users/frankharkins/Documents/documentation/docs/start/~/Documents/documentation/.venv/lib/python3.11/site-packages/qiskit_ibm_runtime/base_primitive.py:121)     raise ValueError(
    [122](https://file+.vscode-resource.vscode-cdn.net/Users/frankharkins/Documents/documentation/docs/start/~/Documents/documentation/.venv/lib/python3.11/site-packages/qiskit_ibm_runtime/base_primitive.py:122)         "A backend or session must be specified when not using ibm_cloud channel."
    [123](https://file+.vscode-resource.vscode-cdn.net/Users/frankharkins/Documents/documentation/docs/start/~/Documents/documentation/.venv/lib/python3.11/site-packages/qiskit_ibm_runtime/base_primitive.py:123)     )

ValueError: A backend or session must be specified when not using ibm_cloud channel.

I wonder if this is a bug in qiskit-ibm-runtime; I also get the same error trying the code from the Local testing mode page.

@frankharkins When I download the hello world, and comment out the online backend to use the fake backend:

BasicProviderError                        Traceback (most recent call last)
Cell In[8], line 16
12 job = estimator.run([(isa_circuit, observables)])
14 # This is the result of the entire submission.  We submitted one Pub,
15 # so this contains one inner result (and some metadata of its own).
---> 16 job_result = job.result()
18 # This is the result from our single pub, which had five observables,
19 # so contains information on all five.
20 pub_result = job.result()[0]
File ~/Documents/2024_03_Qiskit/lib/python3.9/site-packages/qiskit/primitives/primitive_job.py:51, in PrimitiveJob.result(self)
49 def result(self) -> ResultT:
50     self._check_submitted()
---> 51     return self._future.result()
File /Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/concurrent/futures/_base.py:446, in Future.result(self, timeout)
444     raise CancelledError()
445 elif self._state == FINISHED:
--> 446     return self.__get_result()
447 else:
448     raise TimeoutError()
File /Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/concurrent/futures/_base.py:391, in Future.__get_result(self)
389 if self._exception:
390     try:
--> 391         raise self._exception
392     finally:
393         # Break a reference cycle with the exception in self._exception
394         self = None
File /Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/concurrent/futures/thread.py:58, in _WorkItem.run(self)
55     return
57 try:
---> 58     result = self.fn(*self.args, **self.kwargs)
59 except BaseException as exc:
60     self.future.set_exception(exc)
File ~/Documents/2024_03_Qiskit/lib/python3.9/site-packages/qiskit_ibm_runtime/qiskit/primitives/backend_estimator_v2.py:151, in BackendEstimatorV2._run(self, pubs)
150 def _run(self, pubs: list[EstimatorPub]) -> PrimitiveResult[PubResult]:
--> 151     return PrimitiveResult([self._run_pub(pub) for pub in pubs])
File ~/Documents/2024_03_Qiskit/lib/python3.9/site-packages/qiskit_ibm_runtime/qiskit/primitives/backend_estimator_v2.py:151, in (.0)
150 def _run(self, pubs: list[EstimatorPub]) -> PrimitiveResult[PubResult]:
--> 151     return PrimitiveResult([self._run_pub(pub) for pub in pubs])
File ~/Documents/2024_03_Qiskit/lib/python3.9/site-packages/qiskit_ibm_runtime/qiskit/primitives/backend_estimator_v2.py:169, in BackendEstimatorV2._run_pub(self, pub)
167     param_index = bc_param_ind[index]
168     param_obs_map[param_index].update(bc_obs[index].keys())
--> 169 expval_map = self._calc_expval_paulis(circuit, parameter_values, param_obs_map, shots)
171 # calculate expectation values (evs) and standard errors (stds)
172 evs = np.zeros_like(bc_param_ind, dtype=float)
File ~/Documents/2024_03_Qiskit/lib/python3.9/site-packages/qiskit_ibm_runtime/qiskit/primitives/backend_estimator_v2.py:202, in BackendEstimatorV2._calc_expval_paulis(self, circuit, parameter_values, param_obs_map, shots)
199     circuits.extend(new_circuits)
201 # run circuits
--> 202 result, metadata = _run_circuits(
203     circuits, self._backend, shots=shots, seed_simulator=self._options.seed_simulator
204 )
206 # postprocessing results
207 expval_map: dict[tuple[tuple[int, ...], str], tuple[float, float]] = {}
File ~/Documents/2024_03_Qiskit/lib/python3.9/site-packages/qiskit/primitives/backend_estimator.py:75, in _run_circuits(circuits, backend, **run_options)
73     result = [x.result() for x in jobs]
74 else:
---> 75     result = [backend.run(circuits, **run_options).result()]
76 return result, metadata
File ~/Documents/2024_03_Qiskit/lib/python3.9/site-packages/qiskit_ibm_runtime/fake_provider/fake_backend.py:364, in FakeBackendV2.run(self, run_input, **options)
362     self._setup_sim()
363 self.sim._options = self._options
--> 364 job = self.sim.run(circuits, **options)
365 return job
File ~/Documents/2024_03_Qiskit/lib/python3.9/site-packages/qiskit/providers/basic_provider/basic_simulator.py:499, in BasicSimulator.run(self, run_input, **backend_options)
497 self._set_options(qobj_config=qobj_options, backend_options=backend_options)
498 job_id = str(uuid.uuid4())
--> 499 job = BasicProviderJob(self, job_id, self._run_job(job_id, qobj))
500 return job
File ~/Documents/2024_03_Qiskit/lib/python3.9/site-packages/qiskit/providers/basic_provider/basic_simulator.py:512, in BasicSimulator._run_job(self, job_id, qobj)
502 def _run_job(self, job_id: str, qobj: QasmQobj) -> Result:
503     """Run experiments in qobj
504
505     Args:
(...)
510         Result object
511     """
--> 512     self._validate(qobj)
513     result_list = []
514     self._shots = qobj.config.shots
File ~/Documents/2024_03_Qiskit/lib/python3.9/site-packages/qiskit/providers/basic_provider/basic_simulator.py:729, in BasicSimulator._validate(self, qobj)
727 max_qubits = self.MAX_QUBITS_MEMORY
728 if n_qubits > max_qubits:
--> 729     raise BasicProviderError(
730         f"Number of qubits {n_qubits} is greater than maximum ({max_qubits}) "
731         f'for "{self.name}".'
732     )
733 for experiment in qobj.experiments:
734     name = experiment.header.name
BasicProviderError: 'Number of qubits 27 is greater than maximum (24) for "basic_simulator".'

@frankharkins For completeness I installed everything new, last week, including Qskit1.0 in a virtual environment, so my runtime is already at qiskit-ibm-runtime==0.22;
The last error message BasicProviderError: 'Number of qubits 27 is greater than maximum (24) for "basic_simulator".' seems that in the current version of the hello world is suggesting a fake backend that is too large or missing settings that allow it to run. I saw in the fake.bakenddocumentation that there is a function variable  "num_qubits" but that does not appear in the hello world description.
When I replace the Fake backend with less qubits (specifically, FakeManilaV2) in the current version of Hello World I get the following output after step 3:
/Users/pathtovirtualenvironment/lib/python3.9/site-packages/qiskit_ibm_runtime/fake_provider/local_service.py:243: UserWarning: Options {'default_shots': 5000} have no effect in local testing mode.
warnings.warn(f"Options {options_copy} have no effect in local testing mode.")
/Users/pathtovirtualenvironment/lib/python3.9/site-packages/qiskit_ibm_runtime/fake_provider/fake_backend.py:360: RuntimeWarning: Aer not found using BasicAer and no noise
warnings.warn("Aer not found using BasicAer and no noise", RuntimeWarning)
And this error after step 4:

AttributeError                            Traceback (most recent call last)
Cell In[5], line 8
5 data = observables_labels
6 values = pub_result.data.evs
----> 8 errors = pub_result.data.ensemble_standard_error
10 plt.errorbar(observables_labels, values, yerr=errors, fmt="o")
AttributeError: 'DataBin' object has no attribute 'ensemble_standard_error'


Using the DKIM identifier in the config file instead of the hard-coded "postal".

Fixes #642.

Can we keep the PR to one change? There seems to be an extra commit in here that does something else.

Closing this because the PR introduces a side effect and there is no default option provided in the defaults.yml.


Resource interface : Cleanup and Quota

@ mention of reviewers
@Didayolo
A brief description of the purpose of the changes contained in this PR.
This PR solves the following points

[x] show remaining quota (done but hidden til functionality is implementad by Tristan)
[x] show unused tasks and delete option
[x] show unused datasets and programs and delete option
[x] show unused submissions and delete option
[x] show failed submissions and delete option
[x] implement delete api for unused tasks
[x] implement delete api for unused datasets and programs
[x] implement delete api for unused submissions
[x] implement delete api for unused failed submissions
[x] refresh resources after cleanup
[x] refresh quota and cleanup after adding new submission/dataset/task
[x] refresh quota and cleanup after deleting single submission/dataset/task
[x] refresh quota and cleanup after deleting multiple submission/dataset/task

Issues this PR resolves
#713 -> Interface -> Points: 12,  13, 14, 15, 16

UI for quota management and cleanup (A "progress bar" for the storage quota)
Delete unused tasks
Delete unused datasets and programs
Delete unused submissions
Delete failed submissions

Screenshots
with quota progress bar (hidden now)

Working UI based on new api for getting cleaning statistics

Checklist

[x] Code review by me
[x] Hand tested by me
[x] I'm proud of my work
[ ] Code review by reviewer
[ ] Hand tested by reviewer
[ ] CircleCi tests are passing
[ ] Ready to merge

To discuss

the difference between Submission and Data with type submission
failed Submission when deleted still remains as Data

This looks very nice. I need some time to check this.
Just a quick question: what values did you use for the quota bar? It is just a fake quota or do you really compute some storage stuff here?

I rebased this pull request to avoid migration issues.

@ihsaan-ullah When I load the interface, I get the following error:

I need more details. Error logs from docker django

Here are the Django logs:
codabench-django-1  |
codabench-django-1  | The above exception was the direct cause of the following exception:
codabench-django-1  |
codabench-django-1  | Traceback (most recent call last):
codabench-django-1  |   File "/usr/local/lib/python3.8/site-packages/django/core/handlers/exception.py", line 34, in inner
codabench-django-1  |     response = get_response(request)
codabench-django-1  |   File "/usr/local/lib/python3.8/site-packages/django/core/handlers/base.py", line 115, in _get_response
codabench-django-1  |     response = self.process_exception_by_middleware(e, request)
codabench-django-1  |   File "/usr/local/lib/python3.8/site-packages/django/core/handlers/base.py", line 113, in _get_response
codabench-django-1  |     response = wrapped_callback(request, *callback_args, **callback_kwargs)
codabench-django-1  |   File "/usr/local/lib/python3.8/site-packages/django/views/decorators/csrf.py", line 54, in wrapped_view
codabench-django-1  |     return view_func(*args, **kwargs)
codabench-django-1  |   File "/usr/local/lib/python3.8/site-packages/django/views/generic/base.py", line 71, in view
codabench-django-1  |     return self.dispatch(request, *args, **kwargs)
codabench-django-1  |   File "/usr/local/lib/python3.8/site-packages/rest_framework/views.py", line 495, in dispatch
codabench-django-1  |     response = self.handle_exception(exc)
codabench-django-1  |   File "/usr/local/lib/python3.8/site-packages/rest_framework/views.py", line 455, in handle_exception
codabench-django-1  |     self.raise_uncaught_exception(exc)
codabench-django-1  |   File "/usr/local/lib/python3.8/site-packages/rest_framework/views.py", line 492, in dispatch
codabench-django-1  |     response = handler(request, *args, **kwargs)
codabench-django-1  |   File "/usr/local/lib/python3.8/site-packages/rest_framework/decorators.py", line 54, in handler
codabench-django-1  |     return func(*args, **kwargs)
codabench-django-1  |   File "/app/src/apps/api/views/quota.py", line 19, in user_quota_cleanup
codabench-django-1  |     unused_tasks = Task.objects.filter(
codabench-django-1  |   File "/usr/local/lib/python3.8/site-packages/django/db/models/query.py", line 392, in count
codabench-django-1  |     return self.query.get_count(using=self.db)
codabench-django-1  |   File "/usr/local/lib/python3.8/site-packages/django/db/models/sql/query.py", line 504, in get_count
codabench-django-1  |     number = obj.get_aggregation(using, ['__count'])['__count']
codabench-django-1  |   File "/usr/local/lib/python3.8/site-packages/django/db/models/sql/query.py", line 489, in get_aggregation
codabench-django-1  |     result = compiler.execute_sql(SINGLE)
codabench-django-1  |   File "/usr/local/lib/python3.8/site-packages/django/db/models/sql/compiler.py", line 1142, in execute_sql
codabench-django-1  |     cursor.execute(sql, params)
codabench-django-1  |   File "/usr/local/lib/python3.8/site-packages/django/db/backends/utils.py", line 67, in execute
codabench-django-1  |     return self._execute_with_wrappers(sql, params, many=False, executor=self._execute)
codabench-django-1  |   File "/usr/local/lib/python3.8/site-packages/django/db/backends/utils.py", line 76, in _execute_with_wrappers
codabench-django-1  |     return executor(sql, params, many, context)
codabench-django-1  |   File "/usr/local/lib/python3.8/site-packages/django/db/backends/utils.py", line 84, in _execute
codabench-django-1  |     return self.cursor.execute(sql, params)
codabench-django-1  |   File "/usr/local/lib/python3.8/site-packages/django/db/utils.py", line 89, in __exit__
codabench-django-1  |     raise dj_exc_value.with_traceback(traceback) from exc_value
codabench-django-1  |   File "/usr/local/lib/python3.8/site-packages/django/db/backends/utils.py", line 84, in _execute
codabench-django-1  |     return self.cursor.execute(sql, params)
codabench-django-1  | django.db.utils.ProgrammingError: more than one row returned by a subquery used as an expression
codabench-django-1  |

Also, I think it would be cleaner to have this new interface at the bottom of the page, and with some (small) space between the two interfaces.

@Didayolo with the latest change, it should be working.

I merge develop to have the last changes here.


Convert CacheDir regression tests into unit tests

This is likely to conflict with https://github.com/apache/trafficserver/pull/10558 .


Fix beagleboard#53 and beagleboard#52

Fixed https://github.com/beagleboard/bonescript/issues/53 : analogWrite() slow when writing zero duty cycle , this was due to the test condition for async.until() method being misplaced , so the stopPWM() method was invoked continously, fixing the misplaced test condition fixes the issue.
Fixed https://github.com/beagleboard/bonescript/issues/52 : this relates to analogWrite() on digitalOUT being triggered when calling digitalWrite() , this occurs due to mux mode not being fetched, so added an additional check for it.
Both the issues/fixes were tested and found to be fixed on :
debian@beaglebone:~/bonescript$ uname -a
Linux beaglebone 4.9.82-ti-r102 #1 SMP PREEMPT Thu Feb 22 01:16:12 UTC 2018 armv7l GNU/Linux
debian@beaglebone:~/bonescript$ cat /etc/dogtag
BeagleBoard.org Debian Image 2018-03-05

Hi guys,
When do you think the next version of bonescript will be released?
It would be great if these fixes could be included.
Thanks for all your efforts with this library.
Cheers,
Aidan

Aidan, it is out as version 0.7.0.

When I install bonescript 0.7.0 in a new project these fixes aren't applied

As you can see in the screenshot above, the lines 349 & 350 in hw_mainline.js are still around the wrong way.
Am I missing something?
Thanks

hello @jadonk @vaishnav98 ,
why this MR is still opened ?
you don't want to integrate these fixes in a release ?
thx

Any news on this PR? I'm having issues with analogWrite and I think this may be related.
/cc @jadonk

Sorry for the delay. Missed these despite continuing to work with @vaishnav98. Creating 0.7.2.


 Is it possible to ssh into this docker?

Nope, that's not possible and it's not something your supposed to do in the docker world :) there are articles on this topic online. I'm on my phone atm and can't look them up, but you'll find it.

 Is it possible to ssh into this docker?
—
Reply to this email directly or view it on GitHub.

Will do. Thanks!


Remove file name truncation

Excellent theme, but I find myself constantly wrestling with the truncation of titles in the title bar. I use phrases as titles, some of which can be quite long, and this is a constant source of frustration when trying to rename the file because the phrase is cut off and it doesn't show me what I'm editing.
For example, I may have a title like this:
Define desired outcomes and target dates instead of using casual handoffs, especially in remote work
But it appears visually as:

Which in theory is fine, except that when I place the cursor in the title bar and move to the end of the title it appears like this:

I can edit/delete within that blank space but can't see the text I'm changing or typing.
What is the CSS rule used to perform this so I can create a snippet that will counteract it? It's unbelievably frustrating and introduces so much friction that I'm considering switching back away from the theme, which is otherwise excellent.

Hello sorry for the late response, got very busy and don't keep up with my email as much as I should.
I updated the theme (pressed the Update button in the theme viewer in Obsidian) and can confirm that at least for me it was NOT resolved. The behavior remained the same as reported.
However I did create a snippet with (only) this from your set of recommended snippets and can confirm it does at least hack around the problem:
.workspace-leaf.mod-active .view-header-title-container,
.view-header-title-container {
    height: fit-content;
}

It forces the title bar to change height to accommodate, which is not ideal but isn't unusable. It may also help me focus on reducing length of certain overly long titles. :)
Ideally though it will return to the previous Obsidian default which did not truncate. I've tried many themes and this was the first time I've encountered this particular issue.
Really nice theme overall beyond that issue though. Thanks for producing it.

Well, I'm glad you took your time answering, because I could now look at the problems with different eyes. I've pushed a hotfix that should fix your issue. It should now be the same as default obsidian.


Fixed csproj to look hint at %starcounterbin%

CC @warpech @miyconst

LGTM. What change does it make actually?

It will build even if starcounter is not installed in GAC, but it's
location is specified in %StarcounterBin%. That's the case for teamcity
builds
On Mon, 24 Oct 2016 at 17:18 Marcin Warpechowski<EMAIL_ADDRESS>wrote:

LGTM. What change does it make actually?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/StarcounterPrefabs/Simplified/pull/29#issuecomment-255770981,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AFvBIQ4K2NixAqjLVS-0kPpi9uB9Wn-Bks5q3MwTgaJpZM4Ke6BN
.


cyclic quadrilateral Calculator

I would like to add a calculator that Calculates the area and perimeter of a quadrilateral inscribed in a circle given four sides. Please assign this to me,

Go ahead
Deadline 6 May,2021


Make reshape throw runtime_error if resizing, and add resize function

From a discussion on gitter:
Maybe it would be better to have reshape throw a runtime error when reshaping to a different size (which leaves you with a bunch of unallocated memory).
And make resizing explicit by adding a resize({shape}) method.

This actually just bit me today --- coming from Python and Julia I would expect to see a runtime error instead of a newly allocated array filled with random stuff.


Properly support .. py:data::

This builds on top of https://github.com/Qiskit/documentation/issues/935, which is about broken cross-references. This issue is to also have a more intentional visual design for .. py:data::, such as an MDX component like <PyData> (name tbd).
This is particularly an issue with the circuit.mdx rewrite in Qiskit 1.1:
https://github.com/Qiskit/documentation/blob/394ca77e604b7c58dd916c7ad8f104b6c1e339ac/docs/api/qiskit/dev/circuit.mdx?plain=1#L883-L893

Oh boy - "A `EquivalenceLibrary" haha. No points for English for me.


train.py: training loop

This script will be the main interface for training models

man why is my home internet so slow let's move to korea and have universal 5g thx capitalism + market competition


open with one ID but closes with another ID

I'm using Bun + Elysia, when i make connection it opens with one ID but when i close same connection it closes with another ID
Not really sure if this is normal when i used Fastify + SocketIO it would close with same ID.
Repo: https://github.com/MariuzM/bun/blob/main/src/app.ts

Same goes with messaging
🚀 ~ open:<PHONE_NUMBER>449
🚀 ~ message:<PHONE_NUMBER>624
🚀 ~ message:<PHONE_NUMBER>554
🚀 ~ message:<PHONE_NUMBER>822
Are those ID more like instances? but then how do i keep track of my connections? so lets say i assign user name / ID to specific connection ID but if are different each time i do action on client in WS?

None of those 4 mentioned projects are uWS.js so posting here is not really the way to go. There is no such concept "ID" in uWS.js and I have no idea what those projects do, ask them.

@uNetworkingAB ? what do you mean about 4 different projects? Bun + Elysia (1 project) under the hood they use uWebSockets
Is ws does not have id what is this ws.id ?

https://github.com/uNetworking/uWebSockets.js/discussions/843

I built a pull up bar using wooden beams and metal screws. Now I am complaining to the screw manufacturer for my crooked build.
Please infer

Why are you opening issue here when you use completely different library, elysiajs is adding id to ws. This is why you should not blindly use random libraries with blackbox functionality, just use uWS.js and do it right https://elysiajs.com/patterns/websocket.html#open

I get you guys are annoyed about this, but from my perspective and reading discussion how people use your package is that there is ws.id so how I'm suppose to know Elysia is adding? For me the syntax is same as your API ws.id that's it, i only needed confirmation if this is how it works from your end and if not i would have went back to Elysia or Bun.
@uNetworkingAB no need to be all high and mighty about this...

If you ask here, I assume you want an answer. The problem is, you already got an answer but you seem to want another answer. There is no other answer. Read it, consume it and understand it.

You have issues, hope you sort them out, good luck

Yes my issue is you, bye bye


Mid Epoch Resumption of Streaming Datasets

Mid Epoch Resumption of Streaming Datasets
Uses a Feistel network to reproducibly and efficiently shuffle streaming datasets while constraining the maximum number of shards that must be present on the device at any given time.

Addresses:

https://mosaicml.atlassian.net/browse/CO-408
https://mosaicml.atlassian.net/browse/CO-580

Follows up on an issue diagnosed by https://mosaicml.atlassian.net/browse/CO-630

Rest of PR doesn't pass unit tests yet so not included here. Will mark as ready for review when non-skeleton code is merged.

(composer_venv) ~/m/composer ❮❮❮ pytest -s tests/datasets/test_streaming.py                                                                                ✘ 4
============================================================================== test session starts ===============================================================================
platform darwin -- Python 3.8.9, pytest-7.1.0, pluggy-1.0.0
rootdir: /Users/cress/mosaic/composer, configfile: pyproject.toml
plugins: pytest_codeblocks-0.16.1, timeout-2.1.0, httpserver-1.0.4
collected 138 items / 104 deselected / 34 selected

tests/datasets/test_streaming.py ........................Successfully raised error: [Errno 2] No such file or directory: '/private/var/folders/x9/m4hh28855d37z6g2d3pqr5t80000gn/T/pytest-of-cress/pytest-377/test_reader_download_fail_inde0/remote/index.mds'
.Successfully raised error: [Errno 2] No such file or directory: '/private/var/folders/x9/m4hh28855d37z6g2d3pqr5t80000gn/T/pytest-of-cress/pytest-377/test_reader_download_fail_shar0/local/000001.mds'
....x....

================================================================= 33 passed, 104 deselected, 1 xfailed in 7.70s ==================================================================
(composer_venv) ~/m/composer ❯❯❯

root@interactive-a100-40gb-1-5crl-9cgf5:~/composer# pytest -m daily -s tests/datasets/test_streaming.py
============================================================ test session starts ============================================================
platform linux -- Python 3.9.13, pytest-7.1.0, pluggy-1.0.0
rootdir: /root/composer, configfile: pyproject.toml
plugins: httpserver-1.0.5, pytest_codeblocks-0.16.1
collected 137 items / 65 deselected / 72 selected

tests/datasets/test_streaming.py ..................XXXXXXXXXXXXXXXXXX..................XXXXXXXXXXXXXXXXXX

============================================== 36 passed, 65 deselected, 36 xpassed in 41.16s ===============================================
root@interactive-a100-40gb-1-5crl-9cgf5:~/composer# make test-dist WORLD_SIZE=2 EXTRA_ARGS="-s -m daily tests/datasets/test_streaming.py"
python3   -m composer.cli.launcher -n 2 --master_port 26000   -m pytest   -s -m daily tests/datasets/test_streaming.py
============================================================ test session starts ============================================================
platform linux -- Python 3.9.13, pytest-7.1.0, pluggy-1.0.0
rootdir: /root/composer, configfile: pyproject.toml
plugins: httpserver-1.0.5, pytest_codeblocks-0.16.1
collected 137 items / 105 deselected / 32 selected

tests/datasets/test_streaming.py ................................

==================================================== 32 passed, 105 deselected in 25.80s ====================================================
Waiting up to 30 seconds for all training processes to terminate. Press Ctrl-C to exit immediately.
root@interactive-a100-40gb-1-5crl-9cgf5:~/composer# make test-dist WORLD_SIZE=2 EXTRA_ARGS="-s -m daily tests/datasets/test_streaming.py"
python3   -m composer.cli.launcher -n 2 --master_port 26000   -m pytest   -s -m daily tests/datasets/test_streaming.py
============================================================ test session starts ============================================================
platform linux -- Python 3.9.13, pytest-7.1.0, pluggy-1.0.0
rootdir: /root/composer, configfile: pyproject.toml
plugins: httpserver-1.0.5, pytest_codeblocks-0.16.1
collected 137 items / 105 deselected / 32 selected

tests/datasets/test_streaming.py ................................

==================================================== 32 passed, 105 deselected in 25.80s ====================================================
Waiting up to 30 seconds for all training processes to terminate. Press Ctrl-C to exit immediately.
root@interactive-a100-40gb-1-5crl-9cgf5:~/composer# pytest -m remote -s tests/datasets/test_streaming_remote.py
============================================================ test session starts ============================================================
platform linux -- Python 3.9.13, pytest-7.1.0, pluggy-1.0.0
rootdir: /root/composer, configfile: pyproject.toml
plugins: httpserver-1.0.5, pytest_codeblocks-0.16.1
collected 12 items / 1 deselected / 11 selected

tests/datasets/test_streaming_remote.py xBuilt dataset
samples read: 1000
samples read: 2000
build_dur=1.26s, iter_dur=5.90, samples_per_sec=338.77
XxBuilt dataset
samples read: 1000
samples read: 2000
samples read: 3000
samples read: 4000
samples read: 5000
samples read: 6000
samples read: 7000
samples read: 8000
samples read: 9000
samples read: 10000
samples read: 11000
samples read: 12000
samples read: 13000
samples read: 14000
samples read: 15000
samples read: 16000
samples read: 17000
samples read: 18000
samples read: 19000
samples read: 20000
samples read: 21000
samples read: 22000
samples read: 23000
samples read: 24000
samples read: 25000
samples read: 26000
samples read: 27000
samples read: 28000
samples read: 29000
samples read: 30000
samples read: 31000
samples read: 32000
samples read: 33000
samples read: 34000
samples read: 35000
samples read: 36000
samples read: 37000
samples read: 38000
samples read: 39000
samples read: 40000
samples read: 41000
samples read: 42000
samples read: 43000
samples read: 44000
samples read: 45000
samples read: 46000
samples read: 47000
samples read: 48000
samples read: 49000
samples read: 50000
build_dur=1.17s, iter_dur=199.81, samples_per_sec=250.24
XBuilt dataset
samples read: 1000
samples read: 2000
samples read: 3000
samples read: 4000
build_dur=1.17s, iter_dur=53.67, samples_per_sec=92.27
XBuilt dataset
samples read: 1000
samples read: 2000
samples read: 3000
samples read: 4000
samples read: 5000
samples read: 6000
samples read: 7000
samples read: 8000
samples read: 9000
samples read: 10000
build_dur=1.06s, iter_dur=9.20, samples_per_sec=1086.61
XBuilt dataset
ds_build_dur=0.93s, loader_build_dur=0.00s
samples read: 104
samples read: 208
samples read: 312
samples read: 416
samples read: 520
samples read: 624
samples read: 728
samples read: 832
samples read: 936
samples read: 1040
samples read: 1144
samples read: 1248
samples read: 1352
samples read: 1456
samples read: 1560
samples read: 1664
samples read: 1768
samples read: 1872
samples read: 1976
Epoch 0: epoch_dur=3.88s, samples_per_sec=515.46
samples read: 104
samples read: 208
samples read: 312
samples read: 416
samples read: 520
samples read: 624
samples read: 728
samples read: 832
samples read: 936
samples read: 1040
samples read: 1144
samples read: 1248
samples read: 1352
samples read: 1456
samples read: 1560
samples read: 1664
samples read: 1768
samples read: 1872
samples read: 1976
Epoch 1: epoch_dur=1.59s, samples_per_sec=1257.52
samples read: 104
samples read: 208
samples read: 312
samples read: 416
samples read: 520
samples read: 624
samples read: 728
samples read: 832
samples read: 936
samples read: 1040
samples read: 1144
samples read: 1248
samples read: 1352
samples read: 1456
samples read: 1560
samples read: 1664
samples read: 1768
samples read: 1872
samples read: 1976
Epoch 2: epoch_dur=1.58s, samples_per_sec=1265.63
XBuilt dataset
ds_build_dur=0.94s, loader_build_dur=0.00s
samples read: 2504
samples read: 5008
samples read: 7512
samples read: 10016
samples read: 12520
samples read: 15024
samples read: 17528
samples read: 20032
samples read: 22536
samples read: 25040
samples read: 27544
samples read: 30048
samples read: 32552
samples read: 35056
samples read: 37560
samples read: 40064
samples read: 42568
samples read: 45072
samples read: 47576
Epoch 0: epoch_dur=52.45s, samples_per_sec=953.24
samples read: 2504
samples read: 5008
samples read: 7512
samples read: 10016
samples read: 12520
samples read: 15024
samples read: 17528
samples read: 20032
samples read: 22536
samples read: 25040
samples read: 27544
samples read: 30048
samples read: 32552
samples read: 35056
samples read: 37560
samples read: 40064
samples read: 42568
samples read: 45072
samples read: 47576
Epoch 1: epoch_dur=17.06s, samples_per_sec=2931.14
samples read: 2504
samples read: 5008
samples read: 7512
samples read: 10016
samples read: 12520
samples read: 15024
samples read: 17528
samples read: 20032
samples read: 22536
samples read: 25040
samples read: 27544
samples read: 30048
samples read: 32552
samples read: 35056
samples read: 37560
samples read: 40064
samples read: 42568
samples read: 45072
samples read: 47576
Epoch 2: epoch_dur=17.28s, samples_per_sec=2893.10
XBuilt dataset
ds_build_dur=1.05s, loader_build_dur=0.00s
samples read: 248
samples read: 496
samples read: 744
samples read: 992
samples read: 1240
samples read: 1488
samples read: 1736
samples read: 1984
samples read: 2232
samples read: 2480
samples read: 2728
samples read: 2976
samples read: 3224
samples read: 3472
samples read: 3720
samples read: 3968
samples read: 4216
samples read: 4464
samples read: 4712
Epoch 0: epoch_dur=6.80s, samples_per_sec=727.81
samples read: 248
samples read: 496
samples read: 744
samples read: 992
samples read: 1240
samples read: 1488
samples read: 1736
samples read: 1984
samples read: 2232
samples read: 2480
samples read: 2728
samples read: 2976
samples read: 3224
samples read: 3472
samples read: 3720
samples read: 3968
samples read: 4216
samples read: 4464
samples read: 4712
Epoch 1: epoch_dur=2.86s, samples_per_sec=1733.51
samples read: 248
samples read: 496
samples read: 744
samples read: 992
samples read: 1240
samples read: 1488
samples read: 1736
samples read: 1984
samples read: 2232
samples read: 2480
samples read: 2728
samples read: 2976
samples read: 3224
samples read: 3472
samples read: 3720
samples read: 3968
samples read: 4216
samples read: 4464
samples read: 4712
Epoch 2: epoch_dur=2.78s, samples_per_sec=1784.27
XBuilt dataset
ds_build_dur=0.99s, loader_build_dur=0.00s
samples read: 504
samples read: 1008
samples read: 1512
samples read: 2016
samples read: 2520
samples read: 3024
samples read: 3528
samples read: 4032
samples read: 4536
samples read: 5040
samples read: 5544
samples read: 6048
samples read: 6552
samples read: 7056
samples read: 7560
samples read: 8064
samples read: 8568
samples read: 9072
samples read: 9576
Epoch 0: epoch_dur=3.09s, samples_per_sec=3234.36
samples read: 504
samples read: 1008
samples read: 1512
samples read: 2016
samples read: 2520
samples read: 3024
samples read: 3528
samples read: 4032
samples read: 4536
samples read: 5040
samples read: 5544
samples read: 6048
samples read: 6552
samples read: 7056
samples read: 7560
samples read: 8064
samples read: 8568
samples read: 9072
samples read: 9576
Epoch 1: epoch_dur=0.81s, samples_per_sec=12369.47
samples read: 504
samples read: 1008
samples read: 1512
samples read: 2016
samples read: 2520
samples read: 3024
samples read: 3528
samples read: 4032
samples read: 4536
samples read: 5040
samples read: 5544
samples read: 6048
samples read: 6552
samples read: 7056
samples read: 7560
samples read: 8064
samples read: 8568
samples read: 9072
samples read: 9576
Epoch 2: epoch_dur=0.82s, samples_per_sec=12140.28
XBuilt dataset
ds_build_dur=5.94s, loader_build_dur=0.00s
samples read: 18232
samples read: 36464
samples read: 54696
samples read: 72928
samples read: 91160
samples read: 109392
samples read: 127624
samples read: 145856
samples read: 164088
samples read: 182320
samples read: 200552
samples read: 218784
samples read: 237016
samples read: 255248
samples read: 273480
samples read: 291712
samples read: 309944
samples read: 328176
samples read: 346408
Epoch 0: epoch_dur=73.36s, samples_per_sec=4969.93
samples read: 18232
samples read: 36464
samples read: 54696
samples read: 72928
samples read: 91160
samples read: 109392
samples read: 127624
samples read: 145856
samples read: 164088
samples read: 182320
samples read: 200552
samples read: 218784
samples read: 237016
samples read: 255248
samples read: 273480
samples read: 291712
samples read: 309944
samples read: 328176
samples read: 346408
Epoch 1: epoch_dur=70.34s, samples_per_sec=5183.39
samples read: 18232
samples read: 36464
samples read: 54696
samples read: 72928
samples read: 91160
samples read: 109392
samples read: 127624
samples read: 145856
samples read: 164088
samples read: 182320
samples read: 200552
samples read: 218784
samples read: 237016
samples read: 255248
samples read: 273480
samples read: 291712
samples read: 309944
samples read: 328176
samples read: 346408
Epoch 2: epoch_dur=69.69s, samples_per_sec=5231.55
X

========================================== 1 deselected, 2 xfailed, 9 xpassed in 608.44s (0:10:08) ==========================================
root@interactive-a100-40gb-1-5crl-9cgf5:~/composer#

Closing this out since we are no longer adding new features to V1, this will be supported in V2.


Deploy File Watcher on Windows VM

Title of ticket:
Description
Summarize issue
Dependencies
Are there any dependencies?
DOD

[ ] Create deployment package
[ ] Deploy to dev
[ ] QA
[ ] Deploy to prod

VM access is with Matt Morris, Waiting on test IDIRS for Divya/Abin, plus service account

Deployment package ready, Waiting for VMs, Access etc.


Please define "portable"

Hello!
I am someone interested in regexes, so pomsky caught my eye. This project has a lot of good ideas (I especially like ranges), but there is one thing that really bugs me: How portable is pomsky?
Pomsky advertises itself as "a portable, modern regular expression language", but I don't see it as very portable.
Examples:

Predefined character classes are often defined very differently among languages. E.g. \s is defined as [ \t\n\x0B\f\r] or [\p{IsWhite_Space}] = [\x09-\x0d \x85\xa0\u1680\u2000-\u200a\u2028\u2029\u202f\u205f\u3000] in Java and as [\f\n\r\t\v\u00a0\u1680\u2000-\u200a\u2028\u2029\u202f\u205f\u3000\ufeff] in JavaScript. However, pomsky doesn't address those differences. [s] compiles to \s for both JavaScript and Java.

% compiles to \b in JavaScript, which is a huge issue because it is not Unicode-aware. Documenting this doesn't make it more portable :(

Forward references behave differently in different languages. Here is how the same regex behaves in Python and JavaScript:
>>> r = re.compile(r"^(?:(a)|\1\1){2}$")
>>> r.fullmatch("a") is not None
False
>>> r.fullmatch("aa") is not None
True
>>> r.fullmatch("aaa") is not None
True

> r = /^(?:(a)|\1\1){2}$/
> r.test("a")
true
> r.test("aa")
true
> r.test("aaa")
false

This is because Python and JavaScript have different semantics for how capturing groups capture text. In JavaScript, entering a group (capturing or not) resets the captured text of all capturing groups in it. So when (?:(a)|\1\1) is entered in the second iteration, the captured text of (a) is reset, which is why it does not accept "aaa". Python, on the other hand, only resets the captured text of a capturing group after the capturing group has captured a different part of the string.
Python and JavaScript also differ in the semantics of backreferences in one edge case. If a backreference references a group that has no captured text (either because it has never captured text or because its captured text was reset), then the backreference will always reject (being equivalent to (?!)) in Python, and it will always accept (being equivalent to (?:)) in JavaScript.

Since, pomsky doesn't seem to guarantee that regexes behave the same in different languages, what does portability mean for pomsky?

I am concerned with portability, because semantic differences can lead to security vulnerabilities.
E.g. ( [s]{2} | [ U+feff ] )+ $ will be vulnerable to exponential backtracking in some target language but not others. So if a developer uses a static analyzer or fuzzer to verify absence of exponential backtracking in one target language, they might assume that other languages are safe too.
Of course, semantic differences can cause problems in other ways too. E.g. if pomsky-generated regexes are used for input validation, then the JavaScript frontend might correctly filter out bad inputs but the Java backend does not.

Assuming that portability means "the generated regexes behave the same in all target languages", the above examples could be addressed as follows:

Languages where predefined character classes don't match the semantics of pomsky need to be "polyfilled". E.g. \s can be emulated with the right character class across languages. If people actually want the \s of their respective target language, then they can use regex \s.
% should just behave the same in all target languages. It's unfortunate that JS regexes will be quite long, but long regexes are better than wrong regexes.
This is a really difficult problem. Making capturing groups and backreference behave consistently across language would likely require adding restrictions to how they can be used. This can be done via static analysis (example), but the additional restriction might annoy some users.

Regarding the space: The only differences seems to be that

Java doesn't include U+FEFF (Byte order mark, also used as zero-width space, deprecated as of Unicode 3.2 for the latter purpose)
JavaScript doesn't include U+0085 (Next line, exists for compatibility with EBCDIC, not used anymore as far as I know)

This can be polyfilled with [\s\x85] and [\s\uFEFF], though this would make it impossible to negate it within a character class ([w !s '-'] -> [\w\S\-]).

% should just behave the same in all target languages. It's unfortunate that JS regexes will be quite long, but long regexes are better than wrong regexes.

A problem with this is that lookbehind is not supported in all JS engines (notably, Safari/WebKit doesn't support it), which I want to write a compiler warning for. I don't know any way to emulate \b/\B correctly without using lookbehind.

I don't know any way to emulate \b/\B correctly without using lookbehind.

AFAIK, there is no general way to emulate it without lookbehinds. Lookaround optimizations can eliminate many lookarounds within patterns, but some simple cases (e.g. % "foo") are impossible to do without lookbehinds.

That being said, the examples I gave weren't meant to be bug reports. I just wanted to illustrate that pomsky doesn't seem to be portable, with the definition of "portable" being "compiled regexes behave the same in all target languages".
So could you please clarify what portable means for pomsky? What are pomsky's goals when it comes to supporting compile targets?

"Portable" means that a Pomsky expression that works for one regex flavor should also work in other flavors, unless it uses an unsupported feature (like backreferences in Rust). One example is that named capturing groups use different syntax in JS than in PCRE, but in Pomsky the same syntax can be used to target any flavor. I acknowledge that Pomsky isn't portable in all situations; I initially hoped that I could get rid of all the differences with polyfills, but it has become clear that this is not always possible, so Pomsky's portability is a best-effort kinda thing.

That pomsky accounts for the syntax of different flavors in a given IMO. After all, I don't know any regex flavors with >> lookaheads :)
I am more interested in what portability means for semantics. Right now, pomsky specifies the semantics of its elements (e.g. which sets of characters [s] and [w] match) on its website. However, it seems like flavors are not required to adhere to those semantics and are allowed to approximate them instead. This is a huge problem because it means that users have no guarantee that the regexes pomsky produces are actually correct (= behave as specified by pomsky). A best-effort approach is simply not suitable when it comes to correctness.
That being said, I do see where you're coming from, but I don't think that the current approach to portability is good. The fact, that users don't know which approximations flavors might or might not use, makes pomsky unreliable. I think letting users choose whether they want approximations would be best. This would neatly separate pomsky's semantics and flavor-specific limitations and approximations.
Pomsky could define a list of all approximations that flavors might perform, and then allow users to enable/disable approximations per flavor. Of course, shorthands for sets of options would be nice (e.g. strict to disable all optimizations, and loose to enable safe-ish optimizations). This would also allow pomsky to provide optimizations that might not be appliciable in all cases (e.g. JS regexes to emulate atomic groups using a lookahead+capturing group, but the added capturing group will show up in the list matched capturing groups, which might break user code).
(JS and lookbehinds are a compelling case for this fine-grained approach. While regexes used on the web shouldn't use lookbehinds because of Safari, regexes that used in e.g. electron apps can use lookbehinds. So why should all JS regexes use an approximation that is only necessary for one browser?)

First of all, I consider all 3 examples you pointed out to be bugs. It would be best to create separate issues for them and discuss only the bigger picture here, without looking at each portability issue in detail.
There are multiple possible solutions to portability issues:

Use a polyfill if possible (for example \w is polyfilled in JS)

Make it illegal in the affected regex flavor (for example, % could be forbidden in JS)

Emit a warning pointing out the portability concern

Accept that something isn't perfectly portable and document the differences.

Use a different syntax when the behavior differs (for example, use the $ symbol instead of % for producing \b in JS)

5. seems like a good solution because it maintains correctness without sacrificing functionality. However, it is the least portable and goes against my goal to make Pomsky feel like a single, consistent language.
What I think you're suggesting is a configuration option to choose between 2. (strict) and 4. (loose). My current plan is to use whatever solution feels most appropriate (use polyfills whenever possible, reject code that is most likely incorrect, accept non-portable code if it is useful, emit a warning when a false positive is unlikely).
I intend to communicate this more clearly on the website. I think your idea of a "strict" mode is cool, but this sounds like a bigger project, so I probably won't have time to implement this in the near future. However, if you (or someone else) want to contribute this feature, that would be appreciated!

I consider all 3 examples you pointed out to be bugs.

👍

However, if you (or someone else) want to contribute this feature, that would be appreciated!

This issue was basically me feeling out the goals and ambitions of this project. I wanted to contribute to a Rust project for a while now, so this will be a good first. Expect PRs in the coming year :)

@RunDevelopment I created a proposal to add an ASCII-only mode, addressing the problem with \b in JavaScript. What do you think?


NPM package list GUI

Is there a way to get the NPM package list for non-NodeJS project types? We have a ASP.NET MVC project that is using Angular 2+ (and thus depends on NPM). I can't find any way to get a list of NPM references in Visual Studio (besides just opening package.json, obviously).
FWIW, I think this feature should, out-of-the-box, work the same as it does for NuGet packages (or Bower packages, though that should really be removed now that Bower is deprecated).
Thanks.

I agree, but since this seems more an issue with the ASP.NET side, can you file an issue here: https://developercommunity.visualstudio.com/spaces/8/index.html
That gives it more visibility.

@paulvanbrenk
Are you serious? A post on the VS forums will have more visibility? I'm pretty sure that's where posts go to die.
This repo is where the NPM tooling was developed, no? You work for Microsoft. Please @mention the correct people or point me to a more appropriate repo and I'll open a separate issue.

Yes, the developer community is where the ASP.NET team collects their feedback.

Could be any progress achieved here?


Need to know guardrails for Edge segmentation

Issue in ./help/profile/guardrails.md
There is no guardrails for edge segementation. Need that information.

Thank you for reporting this issue. We are already tracking the issue about missing guardrails for edge segments in the internal issue PLAT-130128.
We're looking to update the documentation as soon as possible.

@Lexieyw - we have updated the guardrails with information on the number of Edge segments per sandbox. Thank you for reporting this. Closing the issue.


Runelite client crashing randomly

Please provide a brief summary of the bug
will be playing the game and the client will crash at random times, i cannot force it to happen so im at a loss. the log is a jvm_crash_pid_2740_r
jvm_crash_pid_2740_r.log
Please provide steps to reproduce where possible
i dont know how to reproduce
Expected Results
client will randomly crash
Actual Results
i dont know lol
What Java Version are you using?
version 8 update 381
What is your operating system and platform?
windows 11,  13th Gen Intel(R) Core(TM) i7-13700K   3.40 GHz, 32.0 GB (31.8 GB usable), 64-bit operating system, x64-based processor
How did you install Java?
went to the java website and downloaded via java.com
Did it work before?
no idea when this started happening, happens on and off

Did you test with the latest update version?
yes

Did you test with other Java versions?
No response
Relevant log output
No response

@numb189 looks like you are using an old version of the Runelite client, can you upgrade to the <IP_ADDRESS> latest and see?


go vet

go vet performed, and items enumerated from that were corrected in this pull request.

Coverage increased (+0.1%) to 99.716% when pulling 66fa5732666fb5af63fe88a0457ce9ec32c9057b on goveting into 0c5be0dee0bb9bd7f6aa98bbd86e1ffec48328d2 on master.


[feature] allow library users to specify providers

Burnex users have to use providers that come with the library, we can make this library more flexible by accepting optional providers argument for. This would allow library users to edit provider list or keep their own while reusing logic.
This would be a backwards compatible change. Suggested API change:
  iex> providers = ["badomain.org"]
  iex><EMAIL_ADDRESS>providers: providers)

or more realistic:
  @good_domains ["com.ar", ...]
  @providers Burnex.providers() |> MapSet.delete(@good_domains)

  ...

  def is_burner?(email) do
     Burnex.is_burner?(email, providers: @providers)
  end

It's possible to do all of this in "userspace", but we pretty much have to re-implement lib.

Resolved by https://github.com/Betree/burnex/pull/78


MMCA-4891-Update messages to fix conflicting usage of message.en

Could you please checkout from the main branch and make your changes on top of that as this seems an old branch and contains lots of old commits that are not relevant for this change as those changes are already in the main branch?


Single dot not visible on iOS 12

Hello, i have been using this lib for a while, and did not have any issue till now. I opened an app on iOS 12 and wherever i have one page in SMPageControl that page indicator (dot) is not visible, also it looks like even if i have more than one it is visible but less, like view is smaller.
I did some research and found this "hidesForSinglePage" property, but it is always false.
Anyone with same issue?

I run into sam issue.
pageControl.hidesForSinglePage = false
not helped at all. Page indicator for one page is not visible


High CPU Usage and Model Stoppage Issue in Ollama on Linux CentOS7 Without GPU

What is the issue?
I'm using Ollama as the framework for large AI models, with open-webUI or anythingLLM as the frontend.
My machine is running Linux CentOS7 with 32GB of memory and a 24-core CPU, but no GPU.
When running models like phi3 or others in Ollama, the CPU usage is around 1200% (htop shows 12 cores fully utilized). After a few rounds of conversation, which might take about 5-6 minutes, the CPU usage drops to 100% (htop shows one random core fully utilized), and it stays that way until I stop Ollama. At this point, the model stops generating text. Not only does the current model stop working, but switching to other models downloaded in Ollama also has no effect, although the Linux system itself does not crash.
It seems to be an issue with Ollama.  And  dmsg and journalctl -u ollama no special hits .

thanks!
OS
Linux
GPU
No response
CPU
Intel
Ollama version
0.1.30

After I update to latest 0.1.38 verson . No ploblem now.
And When testing , I find Anythin LLM runing with 25.G !   maybe this is also a factor.


Update README.md

fix a few typos

Type of Change

[ ] Bugfix
[ ] New feature
[ ] Enhancement
[ ] Refactoring
[ ] Dependency updates
[X ] Documentation
[ ] CI/CD

Description

Fixed 2 grammar issues
Additional Changes

[ ] This PR modifies the API contract
[ ] This PR modifies the database schema
[ ] This PR modifies application configuration/environment variables

Motivation and Context

How did you test it?

Checklist

[ ] I formatted the code cargo +nightly fmt --all
[ ] I addressed lints thrown by cargo clippy
[ ] I reviewed the submitted code
[ ] I added unit tests for my changes where possible
[ ] I added a CHANGELOG entry if applicable

Closing this as spam.


Old changeSet is executed before legacy migration

Description
Hi, I was trying to migrate from Mongobee to Mongock and I found some unexpected behavior. It looks like Mongock executes change set before migrating this change set from legacy Mongobee collection. So it is executed once again. I was expecting that Mongock will migrate old collection and will not execute old change set. I didn't find any properties to change this behavior.
Take a look at executionId field, it shows that legacy migration was executed AFTER Mongock found and executed old migration. Details below. I prepared a demo spring application, so you can reproduce this behavior easily.
PRIORITY
NORMAL
Version and environment
Mongock

Mongock version: 5.0.29
Modules involved: springboot, mongodb
How Mongock is used: annotation

Environment

spring-boot 2.6.1
spring-boot-starter-data-mongodb 2.6.1
spring-data-mongodb 3.3.0
org.mongodb:mongodb-driver-sync 4.4.0

Steps to Reproduce

Create a java class with a change set.
Use mongobee to run this change set or create mongo collection changelog with document:

{
	"_id" : ObjectId("61b1cca4dcf99872febea207"),
	"changeId" : "DESCRIPTION",
	"author" : "AUTHOR",
	"timestamp" : ISODate("2021-12-09T10:30:12.765+01:00"),
	"changeLogClass" : "com.kapmati.mongomigration.migration.DbChangeLog",
	"changeSetMethod" : "oldMigrationDesc"
}

Run application with legacy migration feature to migrate old changelog

Behaviour
Expected behavior: Old change set is migrated to Mongock mongo collection but is not executed again.
mongockChangeLog collection:
/* 1 createdAt:12/9/2021, 2:58:17 PM*/
{
	"_id" : ObjectId("61b20b79e02ce021e2be0304"),
	"author" : "mongock",
	"changeId" : "mongock-legacy-migration",
	"executionId" : "2021-12-09T14:58:17.059826-872",
	"changeLogClass" : "io.mongock.driver.mongodb.sync.v4.changelogs.runonce.MongockSync4LegacyMigrationChangeLog",
	"changeSetMethod" : "mongockSpringLegacyMigration",
	"errorTrace" : null,
	"executionHostname" : "fake-host",
	"executionMillis" : NumberLong(25),
	"metadata" : null,
	"state" : "EXECUTED",
	"timestamp" : ISODate("2021-12-09T14:58:17.130+01:00"),
	"type" : "EXECUTION"
},

/* 2 createdAt:12/9/2021, 2:58:17 PM*/
{
	"_id" : ObjectId("61b20b79e02ce021e2be0302"),
	"author" : "AUTHOR",
	"changeId" : "DESCRIPTION",
	"executionId" : "legacy_migration-2021-12-09T14:58:17.123662-606",
	"changeLogClass" : "com.kapmati.mongomigration.migration.DbChangeLog",
	"changeSetMethod" : "oldMigrationDesc",
	"errorTrace" : null,
	"executionHostname" : "unknown",
	"executionMillis" : NumberLong(-1),
	"metadata" : {
		"migration-type" : "legacy"
	},
	"state" : "EXECUTED",
	"timestamp" : ISODate("2021-12-09T10:30:12.765+01:00"),
	"type" : "EXECUTION"
}

Actual behavior: Old change set is migrated to Mongock mongo collection and is executed again.
mongockChangeLog collection:
/* 1 createdAt:12/9/2021, 2:58:17 PM*/
{
	"_id" : ObjectId("61b20b79e02ce021e2be0306"),
	"author" : "AUTHOR",
	"changeId" : "DESCRIPTION",
	"executionId" : "2021-12-09T14:58:17.059826-872",
	"changeLogClass" : "com.kapmati.mongomigration.migration.DbChangeLog",
	"changeSetMethod" : "oldMigrationDesc",
	"errorTrace" : null,
	"executionHostname" : "fake-host",
	"executionMillis" : NumberLong(1),
	"metadata" : null,
	"state" : "EXECUTED",
	"timestamp" : ISODate("2021-12-09T14:58:17.132+01:00"),
	"type" : "EXECUTION"
},

/* 2 createdAt:12/9/2021, 2:58:17 PM*/
{
	"_id" : ObjectId("61b20b79e02ce021e2be0304"),
	"author" : "mongock",
	"changeId" : "mongock-legacy-migration",
	"executionId" : "2021-12-09T14:58:17.059826-872",
	"changeLogClass" : "io.mongock.driver.mongodb.sync.v4.changelogs.runonce.MongockSync4LegacyMigrationChangeLog",
	"changeSetMethod" : "mongockSpringLegacyMigration",
	"errorTrace" : null,
	"executionHostname" : "fake-host",
	"executionMillis" : NumberLong(25),
	"metadata" : null,
	"state" : "EXECUTED",
	"timestamp" : ISODate("2021-12-09T14:58:17.130+01:00"),
	"type" : "EXECUTION"
},

/* 3 createdAt:12/9/2021, 2:58:17 PM*/
{
	"_id" : ObjectId("61b20b79e02ce021e2be0302"),
	"author" : "AUTHOR",
	"changeId" : "DESCRIPTION",
	"executionId" : "legacy_migration-2021-12-09T14:58:17.123662-606",
	"changeLogClass" : "com.kapmati.mongomigration.migration.DbChangeLog",
	"changeSetMethod" : "oldMigrationDesc",
	"errorTrace" : null,
	"executionHostname" : "unknown",
	"executionMillis" : NumberLong(-1),
	"metadata" : {
		"migration-type" : "legacy"
	},
	"state" : "EXECUTED",
	"timestamp" : ISODate("2021-12-09T10:30:12.765+01:00"),
	"type" : "EXECUTION"
}

How often the bug happens: Always
Link to repository using Mongock
https://github.com/kapmati/mongo-migration

Hello @kapmati , your expectation is right. Mongock should migrate the changeLog collection and it shouldn't execute again the changes.
We'll take a look later and spot why that is happening

We have looking at this. We have identified the issue. We will be releasing  a bugfix by 12th Dec

Hello @kapmati ,
Mongock 5.0.31 is released with this bugfix.
Take into account that if you are using transactions, you will probably need the the transactionManager with high consistency.
Something like this:
@Bean
    public MongoTransactionManager transactionManager(MongoTemplate mongoTemplate) {
        TransactionOptions transactionalOptions = TransactionOptions.builder()
                .readConcern(ReadConcern.MAJORITY)
                .readPreference(ReadPreference.primary())
                .writeConcern(WriteConcern.MAJORITY.withJournal(true))
                .build();
        return new MongoTransactionManager(mongoTemplate.getMongoDbFactory(), transactionalOptions);
    }

Hi @dieppa,
thank you for quick response and reaction but i'm afraid that your fix doesn't work. I tested it with implementation platform("io.mongock:mongock-bom:5.0.31") version. I don't use transactions in my demo application, but I checked also with new MongoTransactionManager bean with suggested options and it also didn't help. The behavior is still the same.
Could you check check it once again? Maybe 5.0.31 doesn't contain your fix?

Hi @kapmati ,
We are pretty sure it was fixed, but there might be some chance we didn't add the change inn the release, as we were releasing multiple changes.
I will double check later today and will keep you updated.

Hi @kapmati ,
We think the issue is fixed, however your database state is a corrupted state. The changes have been migrated, but, as they were executed, and probably failed, they are marked as failed, so Mongock will try to execute because it thinks they are pending.
We are working inn two approaches:

Enhancing the legacy migration to cover this scenario(it will fix your case) and we'll probably have it tomorrow or after tomorrow.
Making a command in the CLI to repair these corrupted states. It will e added to Mongock's road map. Cannot tell you when it will be released

However, inn the meantime, if you cannot wait, you can remove all the migrated changes migrated and the one with id mongock-legacy-migration and run Mongock again with legacy migration enabled.
We suggest to wait until we provide an official fix.

Hi @dieppa, I will wait for an official fix. It's not so urgent for me :)

Hi @kapmati ,
this has been fixed in version 5.0.32. The actual mongock library is released and available, however the bom it's still on its way. It will take the time Maven takes to do the artifact publishing.
Note
The legacy migration needs to e executed again and I am pretty sure it appears as executed in your mongock collection.
As said, we'll be adding a CLI command mongock repair legacy-migration, but it's not there yet and we have other priorities at the moment. So you have two options for this:

(recommended) Mark your legacy migration as runAlways with mongock.legacy-migration.run-always=true. The fact that the legacy migration runs always won't hurt, even if the origin table has been removed
Manually remove the entry with id mongock-legacy-migration

Version 5.0.32 works correctly. Thank you @dieppa


When embedding multiple streams in a single webpage, "fullscreen" is horrible :)

Describe the bug (required)
We have 3 livepeer livestream embedded at ethberlin.com/livestream.
When you click "fullscreen" on one of the embedded livestreams, it goes fullscreen, but puts the fullscreen one at the back - and shows the smaller screens on top.
Expected behaviour (required)
When I select one of the streams to be "fullscreen", this should be the only thing I see.
To Reproduce (required)
Steps to reproduce the behaviour:

Go to http://ethberlin.com/livestream
Click the "fullscreen" button in the bottom right corner of one of the live streams
See the stream go full screen BUT with the two smaller streams layered over the top :(

Device (required):

Device: Laptop
OS: Ubuntu
Browser: Chromium
Version: Version 68.0.3440.106 (Official Build) (64-bit)

Screenshots (optional)
This is how the view looks when everything is "not-fullscreen". Beautiful, huh?

Here is how it looks when you put one of the streams "fullscreen". Opposite of beautiful, huh?:

cc: @iSasFTW who has already looked at this a little bit, and might be able to collaborate to find a fix :)

Does this problem occur only on a Laptop with Chromium and Ubuntu?

That's my only experience so far. I'm now trying to get my girlfriend's macbook to test it there.
But she says it won't connect to the internet because internet is nonsense.
So, for now, I only have Chromium on Ubuntu on Lenovo to test it on.
Can someone replicate this bug on another platform?

On an iPhone 4 no streaming is displayed, not even black frames.

Yeah, that's most likely something about the power of the iPhone 4.
We're working on adaptive bitrate streaming, but it's not been implemented in the player yet: https://github.com/livepeer/livepeerjs/issues/183

@chrishobcroft @pmaojo I’ve been able to replicate this in Brave(Blink render engine, just like chromium) on Windows 10.

This is also happening on Chrome (Mac OSX).
The guilty is the fade in animation

Setting opacity:1 style and removing .et_animated class fixes this,
removing fade in effect (not much value for user)

@pmaojo You can detect fullscreen changes using the Fullscreen API. But if the problem the fade effect, it’s probably a better idea to just remove the effect from the Ethberlin site itself, rather than modify the code of chroma/the player to make it work better with that specific site.

Should this issue be opened on https://github.com/livepeer/ethberlin/issues instead?

@pmaojo Perhaps, but i think at this point the problem can be solved by just having the maintainer of the Ethberlin Wordpress site remove the effect, so maybe we can just close this issue and pay out the bounty if that works.

So, I supplied this code to the maintainer of the ETHBerlin Wordpress site:

Can someone please update these iframes and I can share with the ETHBerlin contact.
OR... tell me if something else needs to happen?

@chrishobcroft If the problem is with the fading effect, then the maintaner should probably remove that effect from the site. I don’t think it would be practical to try to accommodate for that in the code of the player/chroma, much better to just have the maintainer fix it on their side.

@chrishobcroft I replaced your iframes with Youtube iframes and the behaviour is exactly the same on that page, so we can conclude that this should be fixed on the webpage, and removing the decorative fade in effect.

@chrishobcroft will you mark work as done on gitcoin?

Now, sit back, and enjoy your work, at http://ethberlin.com/livestream
Well done, and thank you for this final polish!


Suggestion: Window resize event on monitor change

Moving the window from one screen to another with a different DPI, won't resize the app. A quick resize of the window and the app resizes (font-size, etc.).
Perhaps the WebWindow should auto-trigger a single resize event (or similar to cause re-render) when it notices a movement from one screen to another?

I'd be happy to consider a PR for this. Please feel free to submit one if this is an important scenario in your case.
TBH I'm surprised this isn't handled by the native web view control, so if you're reporting this regarding Windows, maybe it would be better reported as an issue to the WebView2 maintainers.


1.0.0 stable release

How many compliant implementations exist?

Does this mean you change it to proper release on NuGet? I can't release with prerelease dependencies due to NuGet rules.

@viktorklang afaik only Akka.Streams for the TCK, Reactor only uses the interface but @akarnokd may correct me on this part.
@akarnokd yup, we have the same issue.

Reactor-Core-DotNet is based on RC1 and it is currently a partial library in terms of functionality and we have only 1 TCK test (that passes). However, its design doesn't conform fully to the RS spec and needs to be reinforced (the same §3.9 problem that RxJava had). Unfortunately, I don't have time right now to fix it plus the API the library provides is outdated relative to the Java variant.

@Silv3rcircl3 How many impls in Akka.Stream have you verified with this?

@viktorklang we have ported the Akka.Streams.TCK project too, so all impls that are verified on the jvm, if that is what you mean by "impls".

It' more about if you only checked "one publisher" or all kinds of stages you have.
These are the ones we cover for example: https://github.com/akka/akka/tree/master/akka-stream-tests-tck/src/test/scala/akka/stream/tck

Two questions:

Did you change the TCK since RC1 from NuGet? If so, how about pre-releasing an RC2 (that netstandard support looks also handy).
How soon do you plan to release the final version?

If you could wait a few days, I can allocate some time and check the TCK with some of the more complicated ReactiveX operators (or the other way around :)).

@ktoso that's what I meant, forgot the .Test part on the project name. https://github.com/akkadotnet/akka.net/tree/dev/src/core/Akka.Streams.Tests.TCK
@akarnokd nothing has changed since the RC, also notice that only the interfaces are compiled against .Net Core , we first need to wait for NUnit to support .Net Core. So we would release another version with .Net Core support for the TCK.
What we could do instead

Release the interfaces as stable release with .Net Core support
Keep the TCK as RC and wait for more feedback

And if all looks good from your side we can release a stable TCK maybe even with .Net Core support, depending on how fast NUnit supports it.

I'd prefer the more passing impls the better before publishing it as final.

@ktoso that's what I meant, forgot the .Test part on the project name. https://github.com/akkadotnet/akka.net/tree/dev/src/core/Akka.Streams.Tests.TCK

Cool, thanks! That clarifies things :)
I wonder if a 3rd impl will appear - what's your general experience with the .NET OSS community and this specific area? Is anyone else working on an impl, is it likely to see another one? @Silv3rcircl3

TBH I don't expect to see any other implementation in the near feature, except for Reactor.
Most devs still simply use what Microsoft offers, so the .Net OSS community is not as big as the jvm one and many projects are a port of a famous library from a different stack.
But there is hope ;-) It seems that Microsoft sees the value in a grown OSS community and has OSS'ed many parts of the stack, also some of the newest features from VS 2017 are working directly with OSS frameworks, like "live unit testing" works with MsTest, XUnit and NUnit from the beginning.
But I'm only active in the OSS world for around to years so my experiences are a little bit limited.

@ktoso @viktorklang IMHO, if Akka.NET and Reactor.IO make some headway in evangelizing the Reactive.Streams specification I'm sure it will get picked up elsewhere in the .NET ecosystem. As @Silv3rcircl3 mentioned, there's still a pall of "not invented in Redmond" that stymies adoption of open standards in .NET. That's changing with the new direction in which the entire .NET platform is going, but there's 15 years of inertia to be accounted for still.

Yeah, I somehow was assuming this indirectly... I think it's unrealistic to require as many full impls as  the JVM version had at launch, but at least lets spread the word once more a bit in case someone wants to chime in before calling the 1.0?
No idea about timeline, rather weeks I guess so all you guys can check it with the latest and then move towards releasing. Though I don't understand the NuGet question here so I may be missing something?

I've (re)implemented a couple of sources and operators with RC1 in my own repository with plain .NET C# (no fancy Core or Standard as I couldn't setup the project properly locally or on CI).
So far, the TCK seems to be working properly and detected mistakes in my code.

IF things seem to work fine, and there's been multiple eyes on things, I'm OK with having it marinate for a week or two and then calling it a wrap.

@Silv3rcircl3 Alright, +1 on my part. (FWIW since I am not the right guy to review .NET code :))

Though I don't understand the NuGet question here so I may be missing something?
@ktoso the "problem" is that Nuget doesn't allow a stable release if one of your dependencies is still in beta, so we can't release a stable Akka.Streams version as long as the Reactive.Streams package is still in beta.

Thanks for explaining, didn't know that - interesting that the beta etc concept is baked into the infra :)

Update. I've implemented a bunch of IProcessors and IPublishers and here is how things turned out:
https://github.com/akarnokd/Reactive4.NET/tree/master/Reactive4.NET.Test
Number of IPublisher tests: 45
Number of unique IPublishers: 21
Number of ignored IPublisher tests: 0
Number of IProcessor tests: 13
Number of unique IProcessors: 5
Number of ignored IProcessor tests: 6
Overall test cases passed: 1446
Overall test cases skipped: 1127
There were issues with IProcessors not behaving like the TCK expected (thus currently ignored), see #29 and #30 for details.

@viktorklang @ktoso could you take a look and @akarnokd remarks ?
IMO the TCK looks stable from a technical POV and could be released after the remarks are resolved and #32 is merged.

Hi @Silv3rcircl3, I won't have time until on Friday.

I'll give it a look tonight.

@viktorklang @ktoso #29 and #30 still need some feedback, would be cool if we could get a release done over the weekend or next week.

Could you release an RC2 first?

+1 for RC releases still, since it seems we're still addressing some smaller issues here.
#29 merged, #30 Viktor addressed it seems.

Sounds reasonable, I could create a RC2 for the TCK after #36 is merged.
I would also release the interfaces as stable package to address the issue that Akka.Streams and Reactor can't be released as stable as long as the interfaces are still in beta.

So I merged the last outstanding PR and would create the release in the next few days, all fine with it?

@Silv3rcircl3 There's a 1.0.1 being shipped for reactive-streams-jvm within a month ;-)

@viktorklang we don't want to wait any longer if possible, we have some demand for an stable Akka.Streams release ;-)

I'm in the process of proposing/posting changes and fixes to the JVM version, most of it relevant to this language variant as well (such as resolution to #30). If you ship 1.0.0, will you have the capacity to do 1.0.1 near the JVM release?

Shipping the .NET 1.0.0 on parity with JVM 1.0.0 seems appropriate.
We can then do the 1.0.1 releases in relative concert.

I'm only talking about the interfaces, the TCK will remain in beta.

Ok cool, I'll release 1.0.0 in a few hours, thanks all for the feedback and work 👍

Did you upload it to nuget?


rust merge error - datafusion panics

Environment
Delta-rs version:
0.16.2
Binding:
rust

Bug
What happened:
Code panics when trying to merge datafusion's DataFrame into the DeltaTable (on MinIO S3).
Could it be connected to https://github.com/delta-io/delta-rs/issues/1699?
What you expected to happen:
Not panic, originally I had INSERT clauses as well, but removed them for example simplification's case as the error was exactly the same.
How to reproduce it:
I've made a minimal example here: https://github.com/PiotrGierda/minimal_example_deltalake_datafusion
Need to provide valid MinIO credentials and details as ENVVARs when running with cargo run
https://github.com/PiotrGierda/minimal_example_deltalake_datafusion/blob/main/src/main.rs#L99C5-L102C25:
let (_table, _metrics) = DeltaOps(target_table)
        .merge(source_df, col("__id").eq(col("source.__id")))
        .with_source_alias("source")
        .await.unwrap();

results in:
     Running `target/debug/minimal_example`
+--------+-------------+-------------+
| __id   | __createdat | __updatedat |
+--------+-------------+-------------+
| csvboi |<PHONE_NUMBER>  |<PHONE_NUMBER>  |
+--------+-------------+-------------+

thread 'main' panicked at 'called Result::unwrap() on an Err value: Generic("Internal error: CoalescePartitionsExec requires at least one input partition\n\nbacktrace:    0: datafusion_common::error::DataFusionError::get_back_trace\n             at /home/piotr/.cargo/registry/src/index.crates.io-6f17d22bba15001f/datafusion-common-31.0.0/src/error.rs:423:26\n   1: <datafusion::physical_plan::coalesce_partitions::CoalescePartitionsExec as datafusion::physical_plan::ExecutionPlan>::execute\n             at /home/piotr/.cargo/registry/src/index.crates.io-6f17d22bba15001f/datafusion-31.0.0/src/physical_plan/coalesce_partitions.rs:128:18\n   2: <datafusion::physical_plan::joins::nested_loop_join::NestedLoopJoinExec as datafusion::physical_plan::ExecutionPlan>::execute\n             at /home/piotr/.cargo/registry/src/index.crates.io-6f17d22bba15001f/datafusion-31.0.0/src/physical_plan/joins/nested_loop_join.rs:250:31\n   3: <datafusion::physical_plan::projection::ProjectionExec as datafusion::physical_plan::ExecutionPlan>::execute\n             at /home/piotr/.cargo/registry/src/index.crates.io-6f17d22bba15001f/datafusion-31.0.0/src/physical_plan/projection.rs:326:20\n   4: <datafusion::physical_plan::projection::ProjectionExec as datafusion::physical_plan::ExecutionPlan>::execute\n             at /home/piotr/.cargo/registry/src/index.crates.io-6f17d22bba15001f/datafusion-31.0.0/src/physical_plan/projection.rs:326:20\n   5: <deltalake::operations::datafusion_utils::MetricObserverExec as datafusion::physical_plan::ExecutionPlan>::execute\n             at /home/piotr/.cargo/registry/src/index.crates.io-6f17d22bba15001f/deltalake-0.16.2/src/operations/mod.rs:324:23\n   6: <datafusion::physical_plan::filter::FilterExec as datafusion::physical_plan::ExecutionPlan>::execute\n             at /home/piotr/.cargo/registry/src/index.crates.io-6f17d22bba15001f/datafusion-31.0.0/src/physical_plan/filter.rs:179:20\n   7: <datafusion::physical_plan::projection::ProjectionExec as datafusion::physical_plan::ExecutionPlan>::execute\n             at /home/piotr/.cargo/registry/src/index.crates.io-6f17d22bba15001f/datafusion-31.0.0/src/physical_plan/projection.rs:326:20\n   8: deltalake::operations::write::write_execution_plan::{{closure}}\n             at /home/piotr/.cargo/registry/src/index.crates.io-6f17d22bba15001f/deltalake-0.16.2/src/operations/write.rs:279:26\n   9: deltalake::operations::merge::execute::{{closure}}\n             at /home/piotr/.cargo/registry/src/index.crates.io-6f17d22bba15001f/deltalake-0.16.2/src/operations/merge.rs:990:6\n  10: <deltalake::operations::merge::MergeBuilder as core::future::into_future::IntoFuture>::into_future::{{closure}}\n             at /home/piotr/.cargo/registry/src/index.crates.io-6f17d22bba15001f/deltalake-0.16.2/src/operations/merge.rs:1087:14\n  11: <core::pin::Pin as core::future::future::Future>::poll\n             at /rustc/5680fa18feaa87f3ff04063800aec256c3d4b4be/library/core/src/future/future.rs:125:9\n  12: minimal_example::main::{{closure}}\n             at ./src/main.rs:102:10\n  13: tokio::runtime::park::CachedParkThread::block_on::{{closure}}\n             at /home/piotr/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.33.0/src/runtime/park.rs:282:63\n  14: tokio::runtime::coop::with_budget\n             at /home/piotr/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.33.0/src/runtime/coop.rs:107:5\n  15: tokio::runtime::coop::budget\n             at /home/piotr/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.33.0/src/runtime/coop.rs:73:5\n  16: tokio::runtime::park::CachedParkThread::block_on\n             at /home/piotr/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.33.0/src/runtime/park.rs:282:31\n  17: tokio::runtime::context::blocking::BlockingRegionGuard::block_on\n             at /home/piotr/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.33.0/src/runtime/context/blocking.rs:66:9\n  18: tokio::runtime::scheduler::multi_thread::MultiThread::block_on::{{closure}}\n             at /home/piotr/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.33.0/src/runtime/scheduler/multi_thread/mod.rs:87:13\n  19: tokio::runtime::context::runtime::enter_runtime\n             at /home/piotr/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.33.0/src/runtime/context/runtime.rs:65:16\n  20: tokio::runtime::scheduler::multi_thread::MultiThread::block_on\n             at /home/piotr/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.33.0/src/runtime/scheduler/multi_thread/mod.rs:86:9\n  21: tokio::runtime::runtime::Runtime::block_on\n             at /home/piotr/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.33.0/src/runtime/runtime.rs:350:45\n  22: minimal_example::main\n             at ./src/main.rs:99:5\n  23: core::ops::function::FnOnce::call_once\n             at /rustc/5680fa18feaa87f3ff04063800aec256c3d4b4be/library/core/src/ops/function.rs:250:5\n  24: std::sys_common::backtrace::__rust_begin_short_backtrace\n             at /rustc/5680fa18feaa87f3ff04063800aec256c3d4b4be/library/std/src/sys_common/backtrace.rs:135:18\n  25: std::rt::lang_start::{{closure}}\n             at /rustc/5680fa18feaa87f3ff04063800aec256c3d4b4be/library/std/src/rt.rs:166:18\n  26: core::ops::function::impls::<impl core::ops::function::FnOnce for &F>::call_once\n             at /rustc/5680fa18feaa87f3ff04063800aec256c3d4b4be/library/core/src/ops/function.rs:284:13\n  27: std::panicking::try::do_call\n             at /rustc/5680fa18feaa87f3ff04063800aec256c3d4b4be/library/std/src/panicking.rs:500:40\n  28: std::panicking::try\n             at /rustc/5680fa18feaa87f3ff04063800aec256c3d4b4be/library/std/src/panicking.rs:464:19\n  29: std::panic::catch_unwind\n             at /rustc/5680fa18feaa87f3ff04063800aec256c3d4b4be/library/std/src/panic.rs:142:14\n  30: std::rt::lang_start_internal::{{closure}}\n             at /rustc/5680fa18feaa87f3ff04063800aec256c3d4b4be/library/std/src/rt.rs:148:48\n  31: std::panicking::try::do_call\n             at /rustc/5680fa18feaa87f3ff04063800aec256c3d4b4be/library/std/src/panicking.rs:500:40\n  32: std::panicking::try\n             at /rustc/5680fa18feaa87f3ff04063800aec256c3d4b4be/library/std/src/panicking.rs:464:19\n  33: std::panic::catch_unwind\n             at /rustc/5680fa18feaa87f3ff04063800aec256c3d4b4be/library/std/src/panic.rs:142:14\n  34: std::rt::lang_start_internal\n             at /rustc/5680fa18feaa87f3ff04063800aec256c3d4b4be/library/std/src/rt.rs:148:20\n  35: std::rt::lang_start\n             at /rustc/5680fa18feaa87f3ff04063800aec256c3d4b4be/library/std/src/rt.rs:165:17\n  36: main\n  37: __libc_start_call_main\n             at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16\n  38: __libc_start_main_impl\n             at ./csu/../csu/libc-start.c:392:3\n  39: _start\n.\nThis was likely caused by a bug in DataFusion's code and we would welcome that you file an bug report in our issue tracker")', src/main.rs:102:16
stack backtrace:
0: rust_begin_unwind
at /rustc/5680fa18feaa87f3ff04063800aec256c3d4b4be/library/std/src/panicking.rs:593:5
1: core::panicking::panic_fmt
at /rustc/5680fa18feaa87f3ff04063800aec256c3d4b4be/library/core/src/panicking.rs:67:14
2: core::result::unwrap_failed
at /rustc/5680fa18feaa87f3ff04063800aec256c3d4b4be/library/core/src/result.rs:1651:5
3: core::result::Result<T,E>::unwrap
at /rustc/5680fa18feaa87f3ff04063800aec256c3d4b4be/library/core/src/result.rs:1076:23
4: minimal_example::main::{{closure}}
at ./src/main.rs:99:30
5: tokio::runtime::park::CachedParkThread::block_on::{{closure}}
at /home/piotr/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.33.0/src/runtime/park.rs:282:63
6: tokio::runtime::coop::with_budget
at /home/piotr/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.33.0/src/runtime/coop.rs:107:5
7: tokio::runtime::coop::budget
at /home/piotr/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.33.0/src/runtime/coop.rs:73:5
8: tokio::runtime::park::CachedParkThread::block_on
at /home/piotr/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.33.0/src/runtime/park.rs:282:31
9: tokio::runtime::context::blocking::BlockingRegionGuard::block_on
at /home/piotr/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.33.0/src/runtime/context/blocking.rs:66:9
10: tokio::runtime::scheduler::multi_thread::MultiThread::block_on::{{closure}}
at /home/piotr/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.33.0/src/runtime/scheduler/multi_thread/mod.rs:87:13
11: tokio::runtime::context::runtime::enter_runtime
at /home/piotr/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.33.0/src/runtime/context/runtime.rs:65:16
12: tokio::runtime::scheduler::multi_thread::MultiThread::block_on
at /home/piotr/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.33.0/src/runtime/scheduler/multi_thread/mod.rs:86:9
13: tokio::runtime::runtime::Runtime::block_on
at /home/piotr/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.33.0/src/runtime/runtime.rs:350:45
14: minimal_example::main
at ./src/main.rs:99:5
15: core::ops::function::FnOnce::call_once
at /rustc/5680fa18feaa87f3ff04063800aec256c3d4b4be/library/core/src/ops/function.rs:250:5
note: Some details are omitted, run with RUST_BACKTRACE=full for a verbose backtrace.
More details:
The same happens with INSERT clauses and with some data already in the table.

@PiotrGierda Thanks for making a minimal example for this.
Are you using merge with a table that contains zero records? I think that's the more likely root cause then minio integration issues.

Yeah, you're right, that was the issue. Thank you!
I thought that I have replicated the issue on a nonempty table as well but I was getting a different issue on that one.
Btw. is there a way to make merge into an empty table work or should we check for emptiness before running merge and resort to regular write when it's empty?

@PiotrGierda MERGE is being refactored to use logical plans which will hopefully resolve this issue https://github.com/delta-io/delta-rs/pull/1720
I'll add an additional test case to ensure the operation works with empty tables.

Cool, thank you.


Compatibility issue with EpicLoot

Crafting With Containers
EpicLoot by RandyKnapp
Mod Version: CraftingWithContainers V 1.0.11
EpicLoot V 0.5.9
Describe the bug
When trying to sacrifice an enchanted item at the forge the progress bar for completing the activity fills up but doesn't complete it and defaults the forge screen to upgrading an item not selected. It also makes you have to click an option on the forge in order to exit the forge.
How To Reproduce
Steps to reproduce the behavior:

First have the enchanter built for the forge.
Then have an enchanted item
Try sacrificing the enchanted item for
Then this bug happens

Expected behavior
A description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Additional details
Simple Recycling
Farm Grid
EquipmentAndQuickslots
ItemStacks
UseEquipmentInWater
Locator
Skillful
Preworkout
LocateMerchant
NoStaminaSneak
FloatingItems
Jam
EpicLoot
ExtendedItemDataFramework

I'm having trouble replicating the issue, but I think I know what causes it.
Can you try with this version of the mod before I release it?
ABearCodes.Valheim.CraftingWithContainers.zip

Finally replicated locally, it was also quite random. Released Crafting with Containers version 1.0.12.
Please try it out and let me know if it resurfaces.

That version fixed the issue. Thanks!

Thanks! Closing the issue


Invalid syntax error when clicking "Return to the application without granting consent"

When a user tries to authenticate via the File Chooser to their business account, they may be prompted with the "Need admin approval" screen. This is fine. However, if they click the "Return to the application without granting consent" link it redirects to the SDK and hits the following syntax error:
Uncaught DOMException: Failed to execute 'postMessage' on 'Window': Invalid target origin 'https%3a%2f%2fwww.REDACTED.com' in a call to 'postMessage'.
It seems that it is redirecting using the encoded URL, when it really needs to be unencoded prior to use with the postMessage API. This error prevents the page from successfully posting the message back to the opening window and results in the window being stuck in a loading screen forever.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 55a64e9d-ae15-46a4-4a4d-3674972d9806
Version Independent ID: 744d6f1a-4cde-b9aa-4003-209d1d4a527b
Content: Open from OneDrive in JavaScript - OneDrive dev center
Content Source: docs/controls/file-pickers/js-v72/open-file.md
Product: onedrive
GitHub Login: @rgregg
Microsoft Alias: rgregg

Thanks for the report and debug information @nickeidler, we'll take a look at this and get back to you.
cc: @margoflynn

@KevinTCoughlin any update?

As part of a repository clean up effort we are closing older issues. If this issue remains, please: open a new issue, reference this issue, and provide any additional details that may help in resolution. Thank you for your understanding as we work to improve our responsiveness.