Clockwork structures and furniture

About the PR

Added brass, alongside clockwork structures (wall, window, thindow, windoor, airlocks, plating, lattice, grille) and furniture (table, chair) with a method to obtain it (cargo purchasing brass)
Why / Balance

something something clockwork cult, maybe.
I can see these being used (outside of clockcult, ofc) in adding some variety to salvage wrecks/ruins or for allowing the engineers to "steampunkify" a room or two
as for balance, the clockwork walls/windows are effectively slightly worse reinforced walls/windows with a method of obtaining them roughly the same amount of effort as making reinforced walls and glass (like plasteel, brass only comes from cargo)
Technical details

n/a
Media

[x] I have added screenshots/videos to this PR showcasing its changes ingame, or this PR does not require an ingame showcase

Breaking changes

Changelog

:cl:

add: Added clockwork structures and brass to build them with.

okay i have no idea why the build and test debug is failing

test fail seems to be unrelated (???)

this is a lot of sprites, entities, and construction graphs to be adding for something that is basically only a niche cargo purchase.

this is potentially worth it as just like another deco theme basically for wrecks/dungeons and such

this is a lot of sprites, entities, and construction graphs to be adding for something that is basically only a niche cargo purchase.

Sloth wanted them in the past for biome generation. And if we accept it, I plan on adding clock cult. So this gets two things out of the way.

Merge master to fix tests, the spill test failure is from an outdated master

did i merge it wrong or is it just borked

I've never seen that failure so probably you, easiest way is to check locally my dude.

okay, testing locally has proven that it is indeed something wrong with the branch. i'll see if i can find a work-around.

made a new branch on my machine, tested it and it succeeded. then i copied the resources folder from this branch to it and tested again, it failed.
which means now i have to hunt down whatever is breaking it :steamhappy:

i figured out what was causing the failure!!!
apparently, when doing the "SpillCorner" test in Content.IntegrationTests.Tests.Fluids, the clockwork lattice that the brass plating is built on apparently is checked if it is space, it's obviously spaced so it returns true, which causes a domino effect of falses that end with the test failing
or in other words: the clockwork lattice is not included in whatever blacklist that prevents regular lattices from being tested by the SpillCorner test

there's nothing i can do at this point cause for some reason the integration test is choosing to test its corner spill thing with a space tile, which won't let it place a spill so it fails. outside of that, everything works as intended. i have no way to tell the spill tester to not test with a space tile.
welp. time to change something. damn it.
RIP clockwork lattice 2024 - 2024.

all the checks have passed..... but the clockwork lattice is no more.... what have i done?

Fix merge conflict.

now there's floor tiles

i don't know if i fixed the merge conflict

i think i got all the requested changes, though i'm not sure


HTTP Headers on IRequest

The new IRequest interface should expose HTTP request headers as a property.

I think there's also other undocumented methods on IRequest, for example request.json(). Would it make sense to open a new issue to track that? Or could we update this issue to be about suggesting that IRequest extends the base Request type?

My workaround to get the missing things from Request back is to add & Request to the handler, so I get proper autocompletion:
async function handleCreateComment(request: IRequest & Request, env: Env) {
     const requestData = await request.json<CreateCommentRequest>(); // this works again

The only downside so far is that I had to add ignore to the route definition because of incompatible types:
// @ts-expect-error eslint-disable-line @typescript-eslint/ban-ts-comment
router.post('/:siteId', handleCreateComment);

My workaround to get the missing things from Request back is to add & Request to the handler, so I get proper autocompletion:
import type { Request } from '@cloudflare/workers-types';

async function handleCreateComment(request: IRequest & Request, env: Env) {
     const requestData = await request.json<CreateCommentRequest>(); // this works again

The only downside so far is that I had to add ignore to the route definition because of incompatible types:
// @ts-expect-error eslint-disable-line @typescript-eslint/ban-ts-comment
router.post('/:siteId', handleCreateComment);

In my situation, I need to access the .formData() method, which is not accessible on IRequest. It could be helpful to add additional methods to IRequest.

I would suggest that iRequest shouldn't exist. I would just use the native request.

Got you covered in next/50 :)
IRequest now unions native Request, allowing expected request typing :)
Check out the massive changes here:
https://itty.dev/itty-router/typescript

Additionally for the sadists, IRequestStrict also now exists, removing the generic traps.

The new IRequest interface should expose HTTP request headers as a property.

Done! :)

@kwhitley That's frickin awesome, thank you.


Production build give error: TypeError: Super expression must either be null or a function, not undefined

I am using this library template for all my libraries.
Suddenly, my last library gave this Super expression must either be null or a function, not undefined error.

I could build the library without any problem
I could import the library in a CRA project and run it without any problem
But when I made a production build and uploaded that to the server, the problem occurred.

After a few days of struggling, I decided to delete the configand scripts folder of my library and replaced those with versions of another library of a few weeks ago. So the versions of one of your previous commits.
I think a tweak in one of those files is causing this problem.
I'm not a Webpack or configuration expert so I can't help you on that BUT I found out something that might help you:
I made a fresh library using your new npx command
Doing the whole process of building it and using that in my CRA project, all went fine!
In your project, you have 2 example files, both of them functional components.
I changed one of them to a class component, thus extending React.Component and then, the error occurred!
So I suggest that you add at least one class component to you template.
It's probably a very small tweak for you, but people who use your (excellent) library will bounce into the same problem.

this might help? https://github.com/airbnb/react-with-styles/issues/151

Hi @danydhondt I just refactored Example component to Class based component and it worked and was built as expected, maybe this will help you? https://stackoverflow.com/questions/30116430/reactjs-giving-error-uncaught-typeerror-super-expression-must-either-be-null-or
I'm not converting default example components to Class based components, since React Hooks came out.
Let me know how it goes 👍

Thx @DimiMikadze . I read that article but it didn't help me. I'll try to isolate even more and I'll come back here with my findings. Thx

I've set up a project trying to recreate this problem but everything went ok. The problem must be somewhere deep in my code. I'll close this for now. When I manage to find the problem in the near future, I'll reopen this. Thanks @DimiMikadze for your help anyway. And thanks for this great library builder!


Snowleo

Pull Request Template
Please try to complete the below as best as possible. Some of the
fields may not be necessary so feel free to add or edit as you
see fit.
Checklist
Confirm you have completed the following actions prior to submitting this PR.

[ ] There is an existing issue report for this PR.
[ ] I have forked this project.
[ ] I have created a feature branch.
[ ] My changes have been committed.
[ ] I have pushed my changes to the branch.

Title
README.md update (uncompleted)
Description
This is the first update for the README.md. In future i'll update this more
Issue Resolution
The issue addressed by this PR.
This Pull Request addresses #
Proposed Changes
List your proposed changes.

Adding a description
Add a function list
Add also a member list

Features
No features, it's just a list

Thank you for your contribution. For reasons discussed on Discord, I am closing this. Feel free to reopen a PR which adds missing information to the approved one.


[TESTS] better matmul unit testing

:warning: This PR does not produce bitwise identical kernels as the branch it's merged against. Please check artifacts for details. Download the output file here.


feat: safari issue for gujarati text

:tada: This PR is included in version 1.6.1 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Unable to run pytest for new installation

When trying to run the tests to be sure that everything works, I keep getting the error below. I have tried upgrading pytest to the latest but no change
(datasetteenv) macbookair@Xceptions-Air datasette % pytest
/Users/macbookair/Documents/GitHub/testdatasette/datasetteenv/lib/python3.12/site-packages/pytest_asyncio/plugin.py:208: PytestDeprecationWarning: The configuration option "asyncio_default_fixture_loop_scope" is unset.
The event loop scope for asynchronous fixtures will default to the fixture caching scope. Future versions of pytest-asyncio will default the loop scope for asynchronous fixtures to function scope. Set the default fixture loop scope explicitly in order to avoid unexpected behavior in the future. Valid fixture loop scopes are: "function", "class", "module", "package", "session"

  warnings.warn(PytestDeprecationWarning(_DEFAULT_FIXTURE_LOOP_SCOPE_UNSET))
============================= test session starts ==============================
platform darwin -- Python 3.12.1, pytest-8.3.2, pluggy-1.5.0
SQLite: 3.43.1
rootdir: /Users/macbookair/Documents/GitHub/datasette
configfile: pytest.ini
plugins: asyncio-0.24.0, anyio-4.4.0, timeout-2.3.1, xdist-3.6.1
asyncio: mode=Mode.STRICT, default_loop_scope=None
collected 1481 items

tests/test_package.py ..                                                 [  0%]
tests/test_cli.py .                                                      [  0%]
tests/test_cli_serve_get.py ..                                           [  0%]
tests/test_cli.py .                                                      [  0%]
tests/test_black.py .                                                    [  0%]
tests/test_api.py ...................................................... [  4%]
ss                                                                       [  4%]
tests/test_api_write.py ................................................ [  7%]
...................EEEFEEEEEEEEEEEEEE..EEException ignored in: <function BaseEventLoop.__del__ at 0x107c123e0>
Traceback (most recent call last):
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/base_events.py", line 725, in __del__
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/unix_events.py", line 68, in close
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/selector_events.py", line 104, in close
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/selector_events.py", line 111, in _close_self_pipe
AttributeError: '_UnixSelectorEventLoop' object has no attribute '_ssock'
E.EEException ignored in: <function BaseEventLoop.__del__ at 0x107c123e0>
Traceback (most recent call last):
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/base_events.py", line 725, in __del__
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/unix_events.py", line 68, in close
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/selector_events.py", line 104, in close
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/selector_events.py", line 111, in _close_self_pipe
AttributeError: '_UnixSelectorEventLoop' object has no attribute '_ssock'
EEEEException ignored in: <function BaseEventLoop.__del__ at 0x107c123e0>
Traceback (most recent call last):
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/base_events.py", line 725, in __del__
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/unix_events.py", line 68, in close
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/selector_events.py", line 104, in close
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/selector_events.py", line 111, in _close_self_pipe
AttributeError: '_UnixSelectorEventLoop' object has no attribute '_ssock'
EEEEException ignored in: <function BaseEventLoop.__del__ at 0x107c123e0>
Traceback (most recent call last):
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/base_events.py", line 725, in __del__
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/unix_events.py", line 68, in close
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/selector_events.py", line 104, in close
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/selector_events.py", line 111, in _close_self_pipe
AttributeError: '_UnixSelectorEventLoop' object has no attribute '_ssock'
EEEEException ignored in: <function BaseEventLoop.__del__ at 0x107c123e0>
Traceback (most recent call last):
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/base_events.py", line 725, in __del__
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/unix_events.py", line 68, in close
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/selector_events.py", line 104, in close
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/selector_events.py", line 111, in _close_self_pipe
AttributeError: '_UnixSelectorEventLoop' object has no attribute '_ssock'
xxEEException ignored in: <function BaseEventLoop.__del__ at 0x107c123e0>
Traceback (most recent call last):
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/base_events.py", line 725, in __del__
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/unix_events.py", line 68, in close
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/selector_events.py", line 104, in close
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/selector_events.py", line 111, in _close_self_pipe
AttributeError: '_UnixSelectorEventLoop' object has no attribute '_ssock'
EEEEException ignored in: <function BaseEventLoop.__del__ at 0x107c123e0>
Traceback (most recent call last):
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/base_events.py", line 725, in __del__
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/unix_events.py", line 68, in close
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/selector_events.py", line 104, in close
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/selector_events.py", line 111, in _close_self_pipe
AttributeError: '_UnixSelectorEventLoop' object has no attribute '_ssock'
EE      [ 12%]
tests/test_auth.py EException ignored in: <function BaseEventLoop.__del__ at 0x107c123e0>
Traceback (most recent call last):
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/base_events.py", line 725, in __del__
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/unix_events.py", line 68, in close
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/selector_events.py", line 104, in close
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/selector_events.py", line 111, in _close_self_pipe
AttributeError: '_UnixSelectorEventLoop' object has no attribute '_ssock'
Exception ignored in: <function BaseEventLoop.__del__ at 0x107c123e0>
Traceback (most recent call last):
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/base_events.py", line 725, in __del__
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/unix_events.py", line 68, in close
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/selector_events.py", line 104, in close
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/selector_events.py", line 111, in _close_self_pipe
AttributeError: '_UnixSelectorEventLoop' object has no attribute '_ssock'
E...F......FFFFFFFFFFFF............                  [ 14%]
tests/test_base_view.py ..                                               [ 14%]
tests/test_canned_queries.py .FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF                      [ 17%]
tests/test_cli.py .....F...E.......FFFEF.F
INTERNALERROR> Traceback (most recent call last):
INTERNALERROR>   File "/Users/macbookair/Documents/GitHub/testdatasette/datasetteenv/lib/python3.12/site-packages/_pytest/main.py", line 283, in wrap_session
INTERNALERROR>   File "/Users/macbookair/Documents/GitHub/testdatasette/datasetteenv/lib/python3.12/site-packages/_pytest/main.py", line 337, in _main
INTERNALERROR>   File "/Users/macbookair/Documents/GitHub/testdatasette/datasetteenv/lib/python3.12/site-packages/pluggy/_hooks.py", line 513, in __call__
INTERNALERROR>   File "/Users/macbookair/Documents/GitHub/testdatasette/datasetteenv/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec
INTERNALERROR>   File "/Users/macbookair/Documents/GitHub/testdatasette/datasetteenv/lib/python3.12/site-packages/pluggy/_callers.py", line 139, in _multicall
INTERNALERROR>   File "/Users/macbookair/Documents/GitHub/testdatasette/datasetteenv/lib/python3.12/site-packages/pluggy/_callers.py", line 122, in _multicall
INTERNALERROR>   File "/Users/macbookair/Documents/GitHub/testdatasette/datasetteenv/lib/python3.12/site-packages/_pytest/logging.py", line 805, in pytest_runtestloop
INTERNALERROR>   File "/Users/macbookair/Documents/GitHub/testdatasette/datasetteenv/lib/python3.12/site-packages/pluggy/_callers.py", line 122, in _multicall
INTERNALERROR>   File "/Users/macbookair/Documents/GitHub/testdatasette/datasetteenv/lib/python3.12/site-packages/_pytest/terminal.py", line 673, in pytest_runtestloop
INTERNALERROR>   File "/Users/macbookair/Documents/GitHub/testdatasette/datasetteenv/lib/python3.12/site-packages/pluggy/_callers.py", line 103, in _multicall
INTERNALERROR>   File "/Users/macbookair/Documents/GitHub/testdatasette/datasetteenv/lib/python3.12/site-packages/_pytest/main.py", line 362, in pytest_runtestloop
INTERNALERROR>   File "/Users/macbookair/Documents/GitHub/testdatasette/datasetteenv/lib/python3.12/site-packages/pluggy/_hooks.py", line 513, in __call__
INTERNALERROR>   File "/Users/macbookair/Documents/GitHub/testdatasette/datasetteenv/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec
INTERNALERROR>   File "/Users/macbookair/Documents/GitHub/testdatasette/datasetteenv/lib/python3.12/site-packages/pluggy/_callers.py", line 182, in _multicall
INTERNALERROR>   File "/Users/macbookair/Documents/GitHub/testdatasette/datasetteenv/lib/python3.12/site-packages/pluggy/_result.py", line 100, in get_result
INTERNALERROR>   File "/Users/macbookair/Documents/GitHub/testdatasette/datasetteenv/lib/python3.12/site-packages/pluggy/_callers.py", line 169, in _multicall
INTERNALERROR>   File "/Users/macbookair/Documents/GitHub/testdatasette/datasetteenv/lib/python3.12/site-packages/_pytest/warnings.py", line 109, in pytest_runtest_protocol
INTERNALERROR>   File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/contextlib.py", line 144, in __exit__
INTERNALERROR>   File "/Users/macbookair/Documents/GitHub/testdatasette/datasetteenv/lib/python3.12/site-packages/_pytest/warnings.py", line 67, in catch_warnings_for_item
INTERNALERROR>   File "/Users/macbookair/Documents/GitHub/testdatasette/datasetteenv/lib/python3.12/site-packages/pluggy/_hooks.py", line 535, in call_historic
INTERNALERROR>   File "/Users/macbookair/Documents/GitHub/testdatasette/datasetteenv/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec
INTERNALERROR>   File "/Users/macbookair/Documents/GitHub/testdatasette/datasetteenv/lib/python3.12/site-packages/pluggy/_callers.py", line 139, in _multicall
INTERNALERROR>   File "/Users/macbookair/Documents/GitHub/testdatasette/datasetteenv/lib/python3.12/site-packages/pluggy/_callers.py", line 103, in _multicall
INTERNALERROR>   File "/Users/macbookair/Documents/GitHub/testdatasette/datasetteenv/lib/python3.12/site-packages/_pytest/terminal.py", line 558, in pytest_warning_recorded
INTERNALERROR>   File "/Users/macbookair/Documents/GitHub/testdatasette/datasetteenv/lib/python3.12/site-packages/_pytest/warnings.py", line 89, in warning_record_to_str
INTERNALERROR>   File "<frozen importlib._bootstrap>", line 1360, in _find_and_load
INTERNALERROR>   File "<frozen importlib._bootstrap>", line 1331, in _find_and_load_unlocked
INTERNALERROR>   File "<frozen importlib._bootstrap>", line 935, in _load_unlocked
INTERNALERROR>   File "<frozen importlib._bootstrap_external>", line 990, in exec_module
INTERNALERROR>   File "<frozen importlib._bootstrap_external>", line 1127, in get_code
INTERNALERROR>   File "<frozen importlib._bootstrap_external>", line 1185, in get_data
INTERNALERROR> OSError: [Errno 24] Too many open files: '/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/tracemalloc.py'

== 55 failed, 171 passed, 2 skipped, 2 xfailed, 22 warnings, 46 errors in 156.24s (0:02:36) ==
sys:1: RuntimeWarning: coroutine 'AsyncToSync.main_wrap' was never awaited
RuntimeWarning: Enable tracemalloc to get the object allocation traceback
Exception ignored in: <function BaseEventLoop.__del__ at 0x107c123e0>
Traceback (most recent call last):
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/base_events.py", line 725, in __del__
    self.close()
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/unix_events.py", line 68, in close
    super().close()
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/selector_events.py", line 104, in close
    self._close_self_pipe()
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/selector_events.py", line 111, in _close_self_pipe
    self._remove_reader(self._ssock.fileno())
                        ^^^^^^^^^^^
AttributeError: '_UnixSelectorEventLoop' object has no attribute '_ssock'
Exception ignored in: <function BaseEventLoop.__del__ at 0x107c123e0>
Traceback (most recent call last):
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/base_events.py", line 725, in __del__
    self.close()
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/unix_events.py", line 68, in close
    super().close()
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/selector_events.py", line 104, in close
    self._close_self_pipe()
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/selector_events.py", line 111, in _close_self_pipe
    self._remove_reader(self._ssock.fileno())
                        ^^^^^^^^^^^
AttributeError: '_UnixSelectorEventLoop' object has no attribute '_ssock'
Exception ignored in: <function BaseEventLoop.__del__ at 0x107c123e0>
Traceback (most recent call last):
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/base_events.py", line 725, in __del__
    self.close()
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/unix_events.py", line 68, in close
    super().close()
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/selector_events.py", line 104, in close
    self._close_self_pipe()
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/selector_events.py", line 111, in _close_self_pipe
    self._remove_reader(self._ssock.fileno())
                        ^^^^^^^^^^^
AttributeError: '_UnixSelectorEventLoop' object has no attribute '_ssock'
Exception ignored in: <function BaseEventLoop.__del__ at 0x107c123e0>
Traceback (most recent call last):
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/base_events.py", line 725, in __del__
    self.close()
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/unix_events.py", line 68, in close
    super().close()
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/selector_events.py", line 104, in close
    self._close_self_pipe()
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/selector_events.py", line 111, in _close_self_pipe
    self._remove_reader(self._ssock.fileno())
                        ^^^^^^^^^^^
AttributeError: '_UnixSelectorEventLoop' object has no attribute '_ssock'
Exception ignored in: <function BaseEventLoop.__del__ at 0x107c123e0>
Traceback (most recent call last):
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/base_events.py", line 725, in __del__
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/unix_events.py", line 68, in close
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/selector_events.py", line 104, in close
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/selector_events.py", line 111, in _close_self_pipe
AttributeError: '_UnixSelectorEventLoop' object has no attribute '_ssock'

Might be a wrong guess, but I think some of the tests are no longer compatible with the latest pytest

If you can replicate this issue on your end, then I could work on it @simonw

The problem seems to be from the test_api_write file. I just want to be sure that it is not specific to me before I go ahead to work on it


[R-package] Updated lgb.train.R with keyword arguments

Fixes lgb.train.R from a list of functions listed on #3390

Hi @jameslamb. Can you please regenerate the docs and guide me how can I run the checks again. Thanks:)

Hi @jameslamb. Can you please regenerate the docs and guide me how can I run the checks again. Thanks:)

thanks so much for the pull request! I've left some requested changes. Once those have been made, I can come update the documentation.

Hi @jameslamb I have fixed the changes which you have suggested. Most of the checks have passed but in 3 of the checks I am getting following error:
The downloaded binary packages are in C:\Users\runneradmin\AppData\Local\Temp\RtmpuoWnIc\downloaded_packages
Downloading https://github.com/microsoft/LightGBM/releases/download/v2.0.12/miktexsetup-4.0-x64.zip
Setting up MiKTeX
miktexsetup.exe: The remote package repository is outdated. You have to choose another repository.
miktexsetup.exe: Data: url="https://ctan.math.illinois.edu/systems/win32/miktex/tm/packages/"

Is that a problem or is it ready for merge?

this happens sometimes and is definitely unrelated to your changes. I just restarted the builds, hopefully they'll pass.

It looks like we have an ongoing issue with the MikTeX ecosystem (#3454 ). I'll merge this PR once I'm able to fix that, apologies.

Thanks @jameslamb :)

That's awesome @jameslamb ! I'd love to keep contributing to this wonderful project :)


Query params aren't proxied correctly (Service Fabric)

Expected Behavior
Query params should be proxied correctly.
Actual Behavior
When using Service Fabric, an incoming request to https://example.com/a?b=c ends up being sent to https://localhost:19081/a??b=c&cmd=instance. I suspect the duplicated ?? problem exists without Service Fabric too.
I'm surprised this hasn't been caught before since it seems very easy to encounter. Perhaps there's a way around this that I just haven't found yet (for now I have code on my side to patch up the DownstreamContext before making the request.
Steps to Reproduce the Problem
Use a dummy rule that proxies UpstreamPath "/{everything}" to DownstreamPath "/{everything}". Make a request that matches the rule, with or without query parameters.
Specifications

Version: 8.0.3 - 10.0.2
Platform: Windows 10, .NET Framework 4.6.2

Root cause of the ?? issue: DownstreamRequest.ToHttpRequestMessage().

var uriBuilder = new UriBuilder
{
    Port = Port,
    Host = Host,
    Path = AbsolutePath,
    Query = Query,
    Scheme = Scheme
};

It probably shouldn't just assign to UriBuilder.Query, and should instead remove leading ? itself. MSDN docs have a not-very-obvious remark about this:

Do not append a string directly to this property. If the length of Query is greater than 1, retrieve the property value as a string, remove the leading question mark, append the new query string, and set the property with the combined string.

Root cause of the cmd=instance query param: DownstreamUrlCreatorMiddleware.CreateServiceFabricUri. I don't know why this was added in the first place. Was there any doc describing this should be added? I have run tests without it and it works as expected.

@davidni there is a similar issue with query string params on the "/{everything}" route. I guess there is a lack of tests here :/
With regards to cmd=instance are you asking why this is being added?

With regards to cmd=instance are you asking why this is being added?
Indeed. Service Fabric Reverse Proxy doesn't seem to care about this query param, and it gets passed transparently all the way to the target service.

It is problematic because it means a service behind Ocelot cannot provide functionality that relies on a query param called cmd. I was curious why this was added in the beginning, and I am suggesting that it be removed.
Makes sense?

@davidni I think I added it because when originally making Ocelot work with SF I saw that the sf client was appending it for requests to instance services. I actually don't know SF that well so if you know we don't need it more than happy to remove!!

Yes, let's remove it. Documentation is here
A call to Reverse Proxy takes this shape:
http(s)://<Cluster FQDN | internal IP>:Port/<ServiceInstanceName>/<Suffix path>?PartitionKey=<key>&PartitionKind=<partitionkind>&ListenerName=<listenerName>&TargetReplicaSelector=<targetReplicaSelector>&Timeout=<timeout_in_seconds>
The query params shown have special meaning for Reverse Proxy. Everything else is proxied without change. cmd is not special in any way per the docs.

To summarize, there are 2 specific asks for this issue:

Fix the double question mark ??
Remove cmd=instance for Service Fabric.

You mentioned (1) might be a dupe of another issue. Do you recall which one?

Might be related to #548

@davidni can you share your json config for this issue? I'm having trouble replicating the problem.

If you can point me in the right direction with the commit above that could also help!

I'll be out of office for a few days, and unfortunately I won't have time to look into this before I leave -- sorry.

I briefly looked at your PR, seems reasonable and nothing stood out on initial review. I wonder if there could be a behavior change between .NET Core Vs. .NET Framework re. how System.Uri works. For reference, my repro was on .NET Framework 4.6.1

Thanks again for your efforts to always raise the bar and improve quality.

No worries I’m away all weekend as well so won’t be too much movement. I will try on Windows classic .net and see what happens. I really hope that is not the case!

I am experiencing the same behavior reported by @davidni wrt item 1, running Ocelot v12.0.1.  I can see that the DownstreamRequest constructor sets Query = _request.RequestUri.Query, and ToHttpRequestMessage() and ToUri() both pass those values as-is to UriBuilder.  The issue is that the value carries the '?' as the first character, and per the MSDN quote David referenced above, this must be manually stripped out.
I'm using very simple ReRoutes rules, such as this:
    {
      "DownstreamPathTemplate": "/routing/{catchAll}",
      "DownstreamScheme": "https",
      "DownstreamHostAndPorts": [
        {
          "Host": "localhost",
          "Port": 23651
        }
      ],
      "UpstreamPathTemplate": "/routing/{catchAll}",
      "UpstreamHttpMethod": [ "GET", "POST", "PUT", "DELETE", "OPTIONS" ],
    },

...which is turning my routes from "https://localhost:5099/routing/services/ServerVersion?myparam=myvalue" into "https://localhost:23651/routing/services/ServerVersion??myparam=myvalue".
Replacing the Query statement in the DownstreamRequest constructor with this, for example, resolves the issue:
            Query = (!string.IsNullOrEmpty(_request.RequestUri.Query) && _request.RequestUri.Query[0].Equals('?'))
                ? _request.RequestUri.Query.Substring(1)
                : _request.RequestUri.Query;

I'm using Ocelot in a ASP.NET app targeting .NET Framework 4.6.1, on Win 10, VS 2017.

Fixed by #570


Support more cases of GoDaddy rate limiting.

Hello @mfycheng
Thanks for your works.

If you think this repository is helpful, please share it with friends, thanks.


No module named 'aiohttp_devtools.runserver'

Trace:
>> adev runserver server.py make_app
Traceback (most recent call last):
  File "/Users/<user>/.virtualenvs/<project>/bin/adev", line 7, in <module>
    from aiohttp_devtools.cli import cli
  File "/Users/<user>/.virtualenvs/<project>/lib/python3.5/site-packages/aiohttp_devtools/cli.py", line 3, in <module>
    from .runserver.logs import setup_logging
ImportError: No module named 'aiohttp_devtools.runserver'

Thanks for reporting this. I had been running aiohttp-devtools myself after installing with pip install -e . so  hadn't noticed I'd forgotten to update packages in setup.py.
I've fixed this and started work on tests, while they're not complete they should prevent something like this going wrong again.

No problem at all! I'm looking forward to use this tool for our projects! Did you update pypi as well?

Just updated pypi now.


Bug occur when server restarts and browser sends back session data

How to reproduce the bug: The server first had some valid users(register and confirm with the usual routine) and restarts (lost all user information), and try to access an authed route with the original session(cookie), the server encounter an exception.

Two way to stop this from happening:

Delete the ab_blog cookie before issue a request to an authed route after restarts
register a new account before issue a request after restarts

It appears that in the function layoutData or the dataInjector,  even if it failed to load the current user, its context still contains the pid value, but I am not sure if this was related.
I am new to Go, and doesn't really know how to modify the context to remove the pid, could you briefly explain how to do it or any other way to resolve this issue?

Ah yeah. The sample is just programmed this way. This is sort of acceptable behavior from my perspective. Your app should not suddenly lose a user that was logged in - in the rare case that it does - this behavior is ok (the sample loses them every restart on purpose, again your app should not do this :D)
To delete a value you can just set it to nil in the context. Though I don't recommend you do this - better to make a middleware that deletes awkward session cookies like ones containing user ids that don't exist. Anyway, users who are logged in should not be deleted. If that's a use case your application needs to support than I suggest you create a middleware to purge stale sessions.
To be clear: This is by design for this project (authboss-sample) and it's up to your app to handle this case more correctly :)


🖐 Does Dagger support pipeline operation cache invalidation yet?

What happened? What did you expect to happen?
👋 Have been playing with dagger by building my own module for running Terraform and other scripts. Am running into a weird issue where previous deploy / destroy runs have been cached to the point where Dagger just shows the previous successful run rather than deploying infrastructure again even though it no longer exists. In essence making multiple runs quite tricky. While searching for a solution I found this in the archive as a workaround to force fresh exec runs https://archive.docs.dagger.io/0.9/cookbook/#invalidate-cache. Does Dagger support invalidating the pipeline operations cache yet so this workaround isn't needed?

This is a temporary workaround until cache invalidation support is officially added to Dagger.

Thanks

Does Dagger support invalidating the pipeline operations cache yet so this workaround isn't needed?

No, no explicit cache invalidation op yet.


Decomplect the event notification

One of the consistent pieces of feedback on authoring your own microstates is that the event notification API is confusing. The setState function accepts an optional initial string is the name of the event that gets fired. This is really non intuitive, flummoxes everyone who comes across it, and needs to go.
Let's take a step backwards and implement a modest event regimen with much less magic that is simple, predictable and easy to understand. There are three, and only three kinds of events that a microstate fires automatically.
on-init
Fires whenever a microstate helper recomputes because its parameter changes.
on-state
Fires whenever a new state is available to the microstate for any reason.

Question: Does both on-state and on-init fire when the initial state is computed?

on-[transition-name]
Fired whenever a transition is invoked, receives the state resulting from that transition. So for example, on the boolean microstate on-toggle will be fired whenever the boolean transition is invoked.

Are you thinking something like this {{let number=(Number value on-add=(action 'onAdd'))}}?
This will be a problem for Object microstate because it will conflict with object properties. ie {{let object=(Object on-assign=(action 'onAssign))}} will treat on-assign as a property of Object instance.
Thoughts?

Hmmm.... Good point.
One way would be to constrain the attributes to the position arguments. This would be in keeping with the way other microstates are constructed:
{{let object=(Object (hash foo="bar") on-assign=(action 'onAssign')}}

Another option would be to blacklist anything starting with on-*

I would prefer the former.
Alternatively, I could allow both but event binding would only work when constructed via the first param.

Yeah, making the object attributes feels right from the implementers perspective, and it is in keeping with the idea that a microstate "boxes" a real object. Still, it does make the api a little more awkward.
So are you saying that with one argument, it's the value, with two arguments, the first is the value, the second is the options?

So are you saying that with one argument, it's the value, with two arguments, the first is the value, the second is the options?

No, I was thinking that it might work like this:
{{let object=(Object (hash hello="world") on-init=(action 'foo'))}}

or
{{let object=(Object foo="bar")}}

The user can use either of these but with the 2nd, they can't bind transitions.
But really, I think we should accept the "little more awkward" and only allow {{let object=(Object (hash ))}} syntax.

I agree. I think simplicity of interface in this case is called for. The general form of microstate is:
(Microstate value options)
That means when you're using it, you don't have to think about each individual constructor api.

I'm going to start with this:

Refactor (Object helper to initialize from (hash
Send on-${transition} action

I'd like to exclude on-init for now - unless you have specific use case in mind.

@cowboyd is the intention that we continue to use Ember.sendEvent(helper, actionName, [state]);?

In our file upload helper we use on-init to start the upload immediately:
{{#each files as |file|}}
  {{let upload=(file-upload file on-init=(action "startImmediately"))}}
{{/each}}

vs manually starting:
{{#each files as |file|}}
  {{let upload=(file-upload file)}} <button onclick={{action upload.start}}>Upload</button>
{{/each}}

To clarify: the implementation remains the same. We're only changing the name of the events that are triggered. Right?

@cowboyd is the intention that we continue to use Ember.sendEvent(helper, actionName, [state]);?

@taras nah, I don't think so. I think we can just call the callback manually.
this['on-init']()

I think we can just call the callback manually.

I'm good with this.

@cowboyd I'm going to refactor the tests to only test for on-init and on-*. Are you good with this?

To the exclusion of on-state?

Oh, nvm, we need on-state.


Update project for web deployment

Hi @victoryang00
I have "fixed" the web deploy for you.
It now can load the images, but it now crashes somewhere else.
Hope that helps you.

Thanks a lot!

Sounds like it crashed because of GL2's uninitialization.

Hi do you need more help with this?

Yes, it would be much helpful to have help. I'm new to wasm Development and gl Deployment. We are working on a JIT RISC-V to WASM emulator. May be familiar with wasm afterwards.

I have opened a new PR with fixes for the web.


core: universal-box lint command

Feature Request for universal-box lint command
Describe the solution you'd like
universal-box lint command will automatically set up a linter configuration for the scaffolded project, allowing developers to maintain code quality and consistency. For JavaScript projects, it will configure ESLint, while for Python projects, it will set up Flake8. Additionally, it can include auto-formatting tools like Prettier for JavaScript to enhance the development experience.
Describe alternatives you've considered
An alternative could be to provide a manual setup guide in the README.md for configuring linters instead of automating it. However, this approach may lead to inconsistencies in how different developers set up their projects.
Considered Drawbacks:

The initial setup may require additional dependencies, which could increase the project size.
Users may need to familiarize themselves with the linter configurations and rules.

How would this feature improve Universal-Box?
universal-box lint command will significantly enhance Universal-Box by promoting best practices in coding standards. It will help users avoid common pitfalls related to code quality and maintainability, ultimately leading to better collaboration and fewer bugs in their applications. By automating the setup process, we can streamline the development workflow and reduce the onboarding time for new users.

This issue is open to discussion .. would suggest communicating your approach with other collaborators and maintainers here before you start off
Initial approach could be around generating these Configuration Files:

For JavaScript projects:

Create an .eslintrc.json file with default rules.
Optionally include a .prettierrc file for formatting.

For Python projects:

Create a setup.cfg or .flake8 file with default Flake8 configurations.

I would like to work on this issue

Assigning it to you

Hey @Abiji-2020 the command works fine
There are a few places where we can improve this to make it more optimal

Enhance ESLint Configuration:

Support for TypeScript: If applicable, add support for TypeScript projects by generating a tsconfig.json and configuring ESLint to work with TypeScript.
Extend Configurations: Allow users to choose from a set of predefined ESLint configurations (e.g., Airbnb, Google) during setup.
Example of an enhanced ESLint configuration:

const eslintConfig = {
    "env": {
        "browser": true,
        "es2021": true,
        "node": true
    },
    "extends": [
        "eslint:recommended",
        "plugin:react/recommended", // For React projects
        "airbnb" // Optional: Add Airbnb config if selected
    ],
    "parserOptions": {
        "ecmaVersion": 12,
        "sourceType": "module"
    },
    "rules": {
        "no-console": "warn", // Example of a custom rule
        "react/prop-types": "off"
    }
};

Improve Flake8 Configuration:

Support for Other Python Linters: Consider integrating support for additional Python linters like Black or Pylint.
Example of an enhanced Flake8 configuration:

[flake8]
max-line-length = 88
extend-ignore = E203, E266, E501  # Customize ignored errors

Try using User Prompts for Customization: During the setup process, use interactive prompts (via inquirer) to gather user preferences for linting configurations.
Testing Integration:
Include scripts in package.json or equivalent files that allow users to easily run linters as part of their development workflow.
if an package.json is present before hand
try appending scripts like this
"scripts": {
    "lint": "eslint .",
    "lint:fix": "eslint . --fix",
    "flake8": "flake8 ."
}

if not present then handle necessary edge cases and error/warning logs
The code examples provided above have not been tested are just provided for reference
Feel free to ask doubts if any
Either way, good work so far! 🙌

@Abhishek-Mallick updated the suggested enhancements. Could you review the PR #112


Test coverage viewer

Create a new test coverage tool that displays data in an easy-to-parse format (lcov.info). lcov.info is not native to go. The native go coverage viewer is not good. An external tool is used to convert the go coverage file to lcov to enable better display: gcov2lcov which can be installed with
go install github.com/jandelgado/gcov2lcov@latest

I had to comment out a bunch of failing tests, next step is to get those tests back online.
After removing generated files and libraries, we sit at about 26% test coverage (!!!)

Ok guys, this is becoming a mind-fuck to deal with these broken tests in this pr, so I'm going to land this pr and then figure out the best way to get to 90% coverage whether that is fixing the commented out tests or not. I need to move forward instead of focusing just on these tests.


Issue #265 part4 moved direct marketing metrics to its own contexts

This is a break out of PR #273 related to materializing the direct-marketing name pace as a context in ExperienceEvent

@kstreeter  - would like to get in with other metric reorgs.

@chrisdegroot I think the idea was to either keep a single click metric OR have context specific metrics.
If we remove direct-marketing/message-clicks, either of the advertising/clicks and web/link-clicks should be removed too. At this point, while advertising and web contexts have their own metrics, others(direct-marketing) need to pick between the two.

@saurabhere - that is not my understanding. Previously you made a comment that a mail click is the same as a web/link click, and therefore direct-marketing should really use that. This was a really great insight. Is this no longer your opinion.
@kstreeter - Do not merge this until we clarify the go forward strategy here please.

But isn't advertising/clicks also same as web/link-click? If yes, then let's merge them. If not, let's define which would be used when and based on that direct-marketing can use one of them.
Although if metrics are defined to be context specific, then a dedicated message-clicks indeed makes sense.

@kstreeter - this is ready to merge now.


Fix users redirection and hide writer-details card

Added a listener to redirect the user to his own profile if he logged-out while editing his details.
Also set the writer-details card to be hidden while article loading.

:+1: nice work!


deprecated images in the vhd

I believe these images are deprecated. Can someone from AKS double check and remove these if needed
mcr.microsoft.com/k8s/core/pause
mcr.microsoft.com/k8s/flexvolume/blobfuse-flexvolume
mcr.microsoft.com/k8s/flexvolume/keyvault-flexvolume
mcr.microsoft.com/oss/kubernetes/exechealthz

almost a year later, but mcr.microsoft.com/k8s/core/pause is gone..

the referenced images are no longer cached


Use unshift to add new cards to the bottom of the stack

The current example uses Array.shift to add new cards, which results in the card being placed on the top of the stack.
It should use Array.unshift, instead:
$scope.addCard = function() {
    var newCard = cardTypes[Math.floor(Math.random() * cardTypes.length)];
    newCard.id = Math.random();
    $scope.cards.unshift(angular.extend({}, newCard));
}

Example

Merged #27, thanks.


Add a link to the default Eclipse Kuksa website

A link is missing to reach the default website provided by the Eclipse forge:
https://projects.eclipse.org/projects/iot.kuksa

We could replace forum by community and have drop-down entries such as forum, who's involved, contribute, issues, ... WDYT?

Ok, I added the PMI community tab, linking to the default eclipse kuksa website, i.e., Eclipse PMI community.
We can figure out how to use a submenu later on.


Custer Management > Cloud Credentials > Create > Amazon > default region dropdown fails to populate on 2.7-head

Setup

Rancher version: v2.7-ea94f0ad4fa168a597da1bc6df74a24faf28507c-head
Browser type & version: Chrome

Describe the bug
default region dropdown fails to populate when creating Amazon EC2 Cloud Credentials on rancher v2.7-head
To Reproduce

Fresh install of rancher v2.7-head
Navigate to Custer Management > Cloud Credentials > Create > Amazon > default region
Reproduced

Result
dropdown does not populate with regions to select
Expected Result
dropdown populates with regions to select
Video Clip
https://user-images.githubusercontent.com/46494969/218863218-1c9b5530-50be-4b00-9d09-73bb7126d5dd.mp4

Ticket #8175 - Test Results - ✅
With Docker on a single-node instance:
Verified on rancher v2.7-d559c2f16d5a634d8e5188e242ee9a5b69c55908-head:
Scenario 1:

Fresh install of rancher v2.7-head
As admin, navigate to Cluster Management > Cloud Credentials > Create > Amazon > default Region
Verified - default region dropdown is successfully populated and accurate
Create cloud credentials
Verified - cloud credentials successfully created

Scenario 2:

Fresh install of rancher v2.7-head
As admin, create a standard user
As standard user, navigate to Cluster Management > Cloud Credentials > Create > Amazon > default Region
Verified - default region dropdown is successfully populated and accurate
Create cloud credentials
Verified - cloud credentials successfully created

Screenshot:


very old maps found in the SteamVrPerformanceTest (beta) do not work properly

Describe the bug
the maps of the beta cant be decompiled of render (some of them cant be render but all of the maps can not be decompiled).
Add if possible the option to decompile those maps
the beta can be found here-  https://valvearchive.com/archive/VR/SteamVR PerfTest/Game Files/
Decompile

Relevant log output or exception with stacktrace
Render
System.IO.InvalidDataException: CRC32 mismatch for read data (expected 5DFBFBD2, got 1C95C907).
   at SteamDatabase.ValvePak.Package.ReadEntry(PackageEntry entry, Byte[] output, Boolean validateCrc) in /home/runner/work/ValvePak/ValvePak/ValvePak/ValvePak/Package.Read.cs:line 165
   at GUI.MainForm.ProcessFile(VrfGuiContext vrfGuiContext, PackageEntry file) in D:\a\ValveResourceFormat\ValveResourceFormat\GUI\MainForm.cs:line 629
   at System.Threading.Tasks.Task`1.InnerInvoke()
   at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
   at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread)

What game does this happen in
Steamvrperformancetest
Reference file in a Source 2 game
vr_aperture_main.zip
Expected behavior
it does not render or decompile
What version of VRF are you using? On what platform?
v8.0

Both the screenshot and the log show corrupted files.

sorry about that, but is it possible to add decompilation to old source 2 maps? For exaple this (map from teh beta) -
testdemo_room_2.zip
the error
[23:24:47.878] [ExtractProgressForm] Failed to extract 'testdemo_room_2.vmap_c': System.InvalidCastException: Specified cast is not valid.
at ValveResourceFormat.Serialization.IKeyValueCollectionExtensions.GetEnumValue[TEnum](IKeyValueCollection collection, String name, Boolean normalize) in D:\a\ValveResourceFormat\ValveResourceFormat\ValveResourceFormat\Serialization\IKeyValueCollection.cs:line 108
at ValveResourceFormat.IO.MapExtract.g__SceneObjectToStaticProp|72_5(IKeyValueCollection sceneObject, Int32 layerIndex, List`1 layerNodes) in D:\a\ValveResourceFormat\ValveResourceFormat\ValveResourceFormat\IO\MapExtract.cs:line 457
at ValveResourceFormat.IO.MapExtract.AddWorldNodesAsStaticProps(WorldNode node) in D:\a\ValveResourceFormat\ValveResourceFormat\ValveResourceFormat\IO\MapExtract.cs:line 667
at ValveResourceFormat.IO.MapExtract.ToValveMap() in D:\a\ValveResourceFormat\ValveResourceFormat\ValveResourceFormat\IO\MapExtract.cs:line 341
at ValveResourceFormat.IO.MapExtract.ToContentFile() in D:\a\ValveResourceFormat\ValveResourceFormat\ValveResourceFormat\IO\MapExtract.cs:line 224
at ValveResourceFormat.IO.FileExtract.Extract(Resource resource, IFileLoader fileLoader) in D:\a\ValveResourceFormat\ValveResourceFormat\ValveResourceFormat\IO\FileExtract.cs:line 130
at GUI.Forms.ExtractProgressForm.ExtractFile(Resource resource, String inFilePath, String outFilePath, Boolean flatSubfiles) in D:\a\ValveResourceFormat\ValveResourceFormat\GUI\Forms\ExtractProgressForm.cs:line 366

I added a few fixes, however these maps are so old we're not going to go out of our way to support them specifically.


[REQ] Component Request: RSSI

Sends the RSSI value from a WiFi development board back to Adafruit IO at a configurable interval.

@ladyada   Are you interested in having @tyeth  look into this? I'm suuuper interested in this as ESPHome/HA does it, and it doesn't require an extra sensor

yeah this is interesting! however it would require a change to the backend right?

ok add it to the pile :)

@ladyada  would this be something we'd want to add in api-v2?

yeah its a good idea!!

This has been surfaced in the main Wippersnapper firmware, as part of beta-88, but no RSSI component / backend support yet.


#247 - Incluir o aviso UNSAFE_ nos métodos marcados como depreciados

fix for issue #247

@allanassis veja se está ok

Like @marcelometal said, it is better to refactor then just saying which method is unsafe.

Ok, I’ll do it
Em sáb, 5 de out de 2019 às 00:59, Allan Assis<EMAIL_ADDRESS>escreveu:

Like @marcelometal https://github.com/marcelometal said, it is better
to refactor then just saying which method is unsafe.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/globocom/megadraft/pull/250?email_source=notifications&email_token=AAFB55TNBWFSXYORJ6GEFNDQNAGIJA5CNFSM4I5SOIO2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEANJQBA#issuecomment-538613764,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAFB55VJHJ4HPBHZ7XRBA5TQNAGIJANCNFSM4I5SOIOQ
.

Done @marcelometal.

@marcelometal I can take a look at those tests, but they aren't appear to be related to my code. Is that rigth?

@marcelometal Finally I get this thing done. Could you check please?

@edgarberlinck, thanks for your contribution!
Seems that this code isn't working as expected:
https://github.com/globocom/megadraft/pull/250/files#diff-e007c62f341ba9b8108617f3d82d21c8R160-R177

Thanks for the feedback. Could you give me more details? I couldn't understand exactly what should be fixed.

@edgarberlinck, thanks for your contribution!
Seems that this code isn't working as expected:
https://github.com/globocom/megadraft/pull/250/files#diff-e007c62f341ba9b8108617f3d82d21c8R160-R177

Sure! Sorry about that!
The Toolbar should be positioned right in the middle of the selected text. As you can see in the following gif (it can be reproduced in the website by selecting some text).

Probably it's something inside the getDerivedStateFromProps function


Outputting Animation (not yet working) / Additional RIB String

I have some sugestion for further improvements :-)
The stuff is so far pretty cool.
However it would be very cool to have some additional features such as:

Export all Scene Frames of the animation

Add some additional option to allow a custom rib archive or string be written in the final RIB at various levels:
-> Object Attribute level (in the object menu)
-> Scene Attribute level (in the Scene Menu)

maybee introduce some variables (frame idx, time and so one) which are replaced : ${frameIdx}
to output something like
AttributeBegin
                       <ADDITIONAL RIB STRING PRE> for example : ReadArchive MySpecialShit.rib
			Attribute "identifier" "name" ["Plane"]
			Transform [ 3.1831 0 0 0  0 3.1831 0 0  0 0 3.1831 0  0 0 0 1 ]
			AttributeBegin
				ReadArchive "material.GridTexture"
				Procedural2 "DelayedReadArchive2" "SimpleBound" "string filename" ["static/Plane-MESH.rib"] "float[6] bound" [-1 1 -1 1 0 0]
			AttributeEnd
                       <ADDITIONAL RIB STRING POST>
    AttributeEnd

that allows also to have some empty objects in blender which can then account for other external RIB stuff :-)

Gabrirel. You clearly understand this a bit.  There's some code in there for outputting a "rib box" (if you ever used SLIM) which is basically what you're talking about... (bty_inlinerib_texts) in properties.py.
Ryan is working on the rib archiving to be checked in soon.  However if you knew some python and wanted to take a crack at re-enabling the inline rib stuff that would be a pretty simple project!  All that would have to happen is putting it back in the ui, and then making sure the get put into the rib stream,  the ri call is
ri.ArchiveRecord(ri.RI_VERBATIM, my_rib_string)   I believe in python that should work.

Gabrirel,
I'm glad that you are taking an interest in these features. I hope to be able to provide most of these using RIB archives. But as Brian said if you want to take a swing at inline rib then that would be great. If you have any more questions concerning this fell free to ask.
Sincerely,
Ryan

Did this ever get added in?  I can take a swing at it.

Good day jdent. Yes and no is the answer. First, I did get RIB archiving done (including animations) and it is in devel. Second, I did allow empties to be used as RIB archive objects. The only things that are not implemented are the custom strings in rib and the export all frames (as far I can remember.) Let me know if you have more questions.

I was referring to the custom strings part, knew you were working on archives :)

Oh sorry I did not know which item you were referring to. In that case feel free to take a loot at it. It should be very straight forward.

If it's just adding an inline custom string at the world, object or light level I should be able to crank that out pretty fast this evening (cross fingers).

Will do.  For custom strings the call is "ri.ArchiveRecord(ri.COMMENT, my_rib_string)" right?

Well you can just use the string literal like so ri.ArchiveRecord('comment', comment).

Yes.  Super easy.
On Thu, May 5, 2016 at 8:53 AM, MWY3510<EMAIL_ADDRESS>wrote:

Well you can just use the string literal like so
ri.ArchiveRecord('comment', comment).
—
You are receiving this because you commented.
Reply to this email directly or view it on GitHub
https://github.com/bsavery/PRMan-for-Blender/issues/189#issuecomment-217192784

--
<EMAIL_ADDRESS>508-274-8700

actually you wanted ri.ArchiveRecord(ri.VERBATIM, "some rib").  ANyway done for .9


Added --cwd option

@FredyC any chance you could pull this down and see if it solves the issue you were having in workspaces?

Well, I am sure it does, but technically I don't need it that much anymore. I am fine with running codegen from the root directory for now. I think it can't harm anyone to have this option so go ahead with it :)


Setting maxnumber parameter on client

Hi
Thanks for this library. It looks really interesting.
I'm having some problem to understand how the complexity of the PoW can be set on the client side (e.g. through the widget) and a malicious spammer could not tamper with it by just calling the challenge endpoint with a very low complexity, receive and solve the easy challenge and submit it instead of the original challenge.
The server endpoint verifying the challenge solution would not know that it is not the original challenge that was submitted. Were is my misunderstanding or would I have to take additional security measures to prevent it? (Like setting the maxnumber only on the server side)
Thanks

Hi,
the verification process is designed to work with server-client workflows - the challenge must be always generated by the server which also signs the challenge with a secret. When signed, the client cannot temper with the challenge because the signature verification would fail. This means that the complexity cannot be set on the client, it is set only by the server.
The maxnumber attribute configured on the widget is there only to configure the upper limit in order to prevent infinite verification if something went wrong (such as incorrect challenge). But the actual complexity is controlled solely by the server.


System.out.println calls in the code

Hello,
I've included your library into my project and noticed, that lines with tag "System.out" have appeared in the log.  Possibly user's sensitive info dumping into sys.out?? Well... Excuse me if I'm wrong, but it looks a bit weird, isn't it?
The affected classes are:

SocialAuthAdapter.java -> private void connectProvider(final Context ctx, final Provider provider);
SocialAuthDialog.java -> private void writeToken(AuthProvider auth);

Would it be possible to patch these issues soon? Thank you in advance.

You are right, they shouldn't be there. If possible, please send a pull request to fix these.

Removed System.out.println calls from code, we are fixing some more issue, hence these changes will be deployed on jCenter after some time but available on GitHub.
Thanks for pointing!


deprecate module

deprecating module that wasnt ever used.

Did you run npm deprecate on this as well?

Nope.   It was never published by me, however someone did actually publish it.  I reached out to them already and they said it was an accident and they would add me as an owner so I could do this.  However I currently do not have access.


V2

fix a bug occured at first running the cli container:
config.json is not exists! and the program make a directory instead of a file.
fix another bug at docker-compose.json:
DRY_RUN environment variable is not working!

v2 branch contains work in progress. I'm actively developing V2 at the moment. Wait a few days when I will merge v2 into main branch. You can use main branch until then.


What are the supported database models?

Hi, I'm looking into using your package in a web api project that I'm building.
Does this only support a single, shared database for the multiple tenants or can it support a database per tenant? Is there a separate db connection per tenant?
Thanks!

It can support this, assuming you are using EF Core, you can simply supply the tenant specific database connection string in the OnConfiguring override of the context class. You would need some central config or database that maps a tenant ID to a database and expose that possibly through an IDatabaseConnectionStringRepository interface. I have played with this myself before and it worked but I don't know where that code went. It was pretty simple and something like the snippet below.
public class ApplicationDbContext : DbContext
{
    private readonly IDatabaseConnectionStringRepository _dbConnectionStringRepository;
    private readonly ITenancyContext<ApplicationTenant> _tenancyContext;

    public ApplicationDbContext(
        DbContextOptions<ApplicationDbContext> options,
        IDatabaseConnectionStringRepository dbConnectionStringRepository,
        ITenancyContext<ApplicationTenant> tenancyContext)
        : base(options)
    {
        _dbConnectionStringRepository = dbConnectionStringRepository;
        _tenancyContext = tenancyContext;
    }

    protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
    {
        base.OnConfiguring(optionsBuilder);

        var tenant = _tenancyContext.Tenant;
        var connectionString = _dbConnectionStringRepository.GetConnectionStringForTenant(tenant.Id);
        optionsBuilder.UseSqlServer(connectionString);
    }
}

I added a quick sample project that does just this, it has a ManagementDbContext which contains all tenants and each tenant has a DatabaseName property set (you could also just use the tenant's ID or CanonicalName if you wish). Then there is the ApplicationDbContext which is very basic, it requires no TenantId columns to be added as the database is for the one tenant, it merely adjusts the connection string to point to the database specified for the tenant. This could be cleaned up a bit more and have an IApplicationDbContextFactory that is registered and creates the correct context the first time rather than having to re-configure the options but this works well regardless.
https://github.com/MultiTenancyServer/MultiTenancyServer.Samples/tree/master/src/DatabasePerTenantAspIdAndEF
Hope that helps!

Thanks for clearing this up! This helps a lot.


JSON formatted response

Return JSON formatted response.

Hi Michelle I assigned this to you for now, work for you? -marco

Done and changes pushed to repo. Usually adding a different data return format in Rails is easy - in this case, it was just adding a format.json to the repond_to loop in the function called in the controller for returning the retailers list. However, in my development environment, the XML rendering wasn't working. I'm not sure what the version differences are between my development environment and the production server, but apparently on my development box, the to_xml rendering function will generate a NoMethodError upon being unable to determine a datatype for each column returned in the XML. I researched this problem and found a Stack Overflow response documenting the same issue I had: http://stackoverflow.com/questions/6808958/to-xml-doesnt-work-on-objects-returned-through-rails-activerecord-habtm-referen
To be on the safe side, I went ahead and implemented the suggested fix which is simply to remove the data type attribute from the generated XML by overriding the to_xml function in the data model rendered. This worked, but now we wont have datatypes returned with the XML data. Does this matter to the Ipad version? Not sure. Let me know if it does (I'm guessing it doesn't since you asked for JSON formatted data and JSON doesn't return datatypes...)

That was fast, Michelle! Now, how do I invoke JSON-formatted responses?
For XML I'm using something like this URL:
http://snapfresh.org/retailers/nearaddy.xml/?address=301 carl st sf ca
Replacing "xml" with "json" like I did below didn't return any results:
http://snapfresh.org/retailers/nearaddy.json/?address=301 carl st sf ca

Never mind, Aaron deployed and restarted the server.


Why testing is very slow

Training is very fast, why testing is so slow? It seems the whole testing procedure is single thread, but why the console output "using up to 12 threads" during testing?

Can you elaborate on how slow it is, and show me an example? The testing is multithread but the parallelization is over the trees, not over the examples (which may not be the most efficient implementation).


lazy() skips and duplicates rows

Laravel Version: 9.5.1
PHP Version: 8.1.3
Database Driver & Version:

Server: MariaDB 10.3.34-MariaDB-0ubuntu<IP_ADDRESS> - Ubuntu 20.04
Database client version: libmysql - mysqlnd 8.0.17

Description:
When fetching models with ...->orderBy(...)->lazy(), the resulting collection potentially skips rows or returns the same row multiple times.
Steps To Reproduce:
Iterate over SomeModel::orderBy('some_non_unique_column')->lazy() with a big table (e.g. 10000-100000 rows). I provided an example project here: https://github.com/tp971/laravel-bug-lazy-collection
Since this bug is probably a result of ORDER BY on non-unique columns not being deterministic, this bug may or may not occur depending on the used DBMS, the DBMS configuration and the number of inserted rows. The example project above should insert enough rows to cause the bug pretty consistently in an Ubuntu 20.04 VM with MariaDB.

It is because it uses page/limit sql, that can cause skipped rows.
Would probably be nice for lazy to implement cursor pagination as the internals instead of page/limit logic this will prevent the skipped rows and make it faster

I suppose this issue also happens with chunk() as it also uses offset and limit.

I don't know, but this doesn't seem very "undocumented": https://laravel.com/docs/9.x/queries#streaming-results-lazily

@tp971 sorry, I mixed this up with the lazy method of collections.
To answer your question, I don't think you can use ->lazy() like this: https://github.com/tp971/laravel-bug-lazy-collection/blob/master/app/Console/Commands/BugTrigger.php#L34. Can you try to use the ->each() with it as documented?

@driesvints using ->each() results in the same issue. I just tested it and updated the repo

@tp971 sorry I didn't see this before but it's indeed probably because you're ordering by a non-unique column. Cursor pagination also has this limitation:


comma three: disconnects from cell network and doesn't reconnect

Seems to start with traffic-channel-dormant
d4958b8ee5ef5cb3|2023-06-02--22-19-59

Haven't seen this recently, and we've updated ModemManager since.


Replace Quad (math lib) with more efficient math library

what new

this was in reference to TWAMM I believe, so we can revist this issue once that work begins


Enable explicit use of key tuples (instead of *Indexer objects) in indexing adapters and explicitly indexed arrays

[ ] Towards #8856
[ ] Tests added
[ ] User visible changes (including notable bug fixes) are documented in whats-new.rst
[ ] New functions/methods are listed in api.rst

Very nice work, Anderson!
We can address the backend warnings in the next PR


SELECT .. FROM /.*/ queries return incorrect results in a cluster setup when database replication factor does not equal # of nodes

SELECT .. FROM /.*/ queries return incorrect results in a cluster setup when database replication factor does not equal # of nodes
System info:
Branch: 1.0
Commit: f0db39037796e2c501785b8dfb6e570d5b645c20
Build: 1.0.0-c1.0.0
4 node cluster
Steps to reproduce:

Assuming you have a 4 node cluster
Create two databases, one with replication factor == # nodes and one that is not.

CREATE DATABASE "TestRepl4" WITH DURATION INF REPLICATION 4 NAME "RP_TestRepl4"
CREATE DATABASE "TestRepl2" WITH DURATION INF REPLICATION 2 NAME "RP_TestRepl2"

Insert dummy data into both

USE TestRepl4
INSERT INTO RP_TestRepl4 treasures,captain_id=pirate_king value=2

USE TestRepl2
INSERT INTO RP_TestRepl2 treasures,captain_id=pirate_king value=2

Select using FROM /.*/ on...

The database with replication factor == # of nodes
USE TestRepl4
select value from /.*/ where captain_id='pirate_king'

.. and you get data
However, select from the database with replication factor != # of nodes..
USE TestRepl2
select value from /.*/ where captain_id='pirate_king'

.. and no data.
Note that specifying the measurement in the TestRepl2 does indeed return the data as expected.
select value from treasures where captain_id='pirate_king'

Expected behavior: When querying the TestRepl2 database, a read quorum should be at play to warn that we may be reading from stale nodes. Or else, when using SELECT .. FROM /.*/, a database with replication factor != # of nodes is instantly returning stale results to queries, without warning.
Without a way to specify read quorum for a cluster. Why then provide the option of Replication factor for a database at all when surely all users would want replication factor == node?
Actual behavior: The TestRepl2 database query returned no data, no warning.
shards (Test database in the log below is set to replication factor 2)
name: Test
----------
id	database	retention_policy	shard_group	start_time		end_time		expiry_time		owners
8	Test		RP_Test			3		2016-09-26T00:00:00Z	2016-10-03T00:00:00Z	2016-10-03T00:00:00Z	6,7
9	Test		RP_Test			3		2016-09-26T00:00:00Z	2016-10-03T00:00:00Z	2016-10-03T00:00:00Z	4,5

name: TestRepl4
---------------
id	database	retention_policy	shard_group	start_time		end_time		expiry_time		owners
10	TestRepl4	RP_TestRepl4		4		2016-09-26T00:00:00Z	2016-10-03T00:00:00Z	2016-10-03T00:00:00Z	4,5,6,7

This issue was copied to our internal tracker for clustering and will be fixed in a future version. Thank you for filing the bug report.


Not updated for 0.7.0

Packager resolves dependencies in a new way with 0.7.0, fixed in the 0.6.3 release.


Add 'space-pull' plugin

Inspired by gitrocket
Runs landing rocket animation on successful 'git pull' command execution

Checklist for submitting a resource to awesome-hyper:

[X] Title: The title for the addition uses its npm title (hyper-example) or the resource's title.
[X] Link: The link for the addition uses the npmjs.com link (https://www.npmjs.com/package/hyper-example) or the resource's full URI.
[X] Repository: The package.json file of the resource contains repository information.
[X] Visual: There is a visual representation of what the addition does in its source repository.
[X] Location: The awesome addition is in the correct category or sub-category.

If it's a plugin or resource, put your awesome item at the BOTTOM of the correct section.
If it's a theme, insert it according to the ALPHABETICAL order.

[X] Description: I've written a short (one sentence) description for the addition in the README.md.
[X] Downloads: I've added a download stats badge in the second column ([![npm](https://img.shields.io/npm/dm/hyper-example.svg?label=DL)]())

Nice, thanks!


Add a primary key to SqlServerVersions table

The SqlServerVersions table does not contain a primary key, this won't allow us to replicate this table through our central DBADA database.
One way would be to create a clustered key on 'MajorVersionNumber', 'MinorVersionNumber' and 'ReleaseDate', this can be done by adding this to the table creation.
CONSTRAINT [PK_SqlServerVersions] PRIMARY KEY CLUSTERED
(
[MajorVersionNumber] ASC,
[MinorVersionNumber] ASC,
[ReleaseDate] ASC
)

Sounds great to me!  I didn't really consider replication when working on this.  Thanks for bringing it up!
I'll plan on getting to it this weekend.

@reharmsen I've published a new release that includes this fix, let me know if you have any issues with it!


createRoot causes various issues with performance and css behaviour

Describe the bug
After upgrading our project, I realised that all the antd components with the tooltips or menus has the flickering issue when hovering off them as well as our table which is used to be very fast in performance, with the new upgrades became slow in scrolling responses and rendering. So I debugged down to 1 line of code which was causing this issue. It was the way we render the App component using createRoot.
Steps to reproduce

Go to https://codesandbox.io/s/jolly-kalam-5mu6oi?file=/src/index.js
Try hover on the button, you will see the tooltip flickering when you hover off the button.
Try to modify the index.js and render the App the old way using ReactDOM.render
Hover on the button and the tooltip will act normally

Expected behavior
Tooltips of antd components should not flicker on hover off
Actual behavior
Tooltips, menus of antd components flicker on hover off

We are also experiencing this issue on our side. Pretty much identical to the case described above.

I have a feeling its something to do with the mouse events, because the scrolling is not working as well as it used to, other libraries like drag and drop ones which using mouse events are totally broken when using createRoot and working with the old way we render App component.

Not sure if any issues are reviewed here to be honest as there are so many of them. I mean in our case we cant upgrade to the latest react because it breaks the whole project or its unusable, too slow, too many issues compared with the old one.

I tried to update to the latest react on a project and I am getting the same results. Would be really helpful to get a fix for this.


Tripura, Meghalaya and Casamance pull request

Tripura,Casamance and Meghalaya.zip

arandomperson5000, may i know which province u change so that i can create a pull request for you?

Safe to Close


Dark mode?

Hi, I really appreciate your complement. I am new to Obsidian and your work has helped me a lot to adapt to the display of pages on the platform. However, I would like to know if there is any chance of implementing or perhaps already exists and I have not seen it to put the page in dark mode as does this add-on (https://darkreader.org/), ie, I know there is the option to change the background and I think it's great, but sometimes the pages as you know have black text and when the background is darkened, the text is no longer very well seen.
I hope this request does not bother you, and thank you very much for your time and for sharing this valuable tool for the obsidian community. greetings.

I understand, thank you for the explanation.


Fix overcompilation with scalac -release by dummy mapping ct.sym entries

Manually tested. I can't figure out how to make the test framework a)
simulate multiple SBT sessions (ie reload state from disk) or
b) conditionally run the on JDK 9+.
Before:
> sbt clean compile && echo "==== ROUND 2 ====" && sbt compile 'last compileIncremental'
[info] welcome to sbt 1.5.3 (AdoptOpenJDK Java 11.0.11)
[info] loading project definition from /Users/jz/code/zinc-bug-release-flag/project
[info] loading settings for project zinc-bug-release-flag from build.sbt ...
[info] set current project to zinc-bug-release-flag (in build file:/Users/jz/code/zinc-bug-release-flag/)
[info] Executing in batch mode. For better performance use sbt's shell
[success] Total time: 0 s, completed 2 Jun. 2021, 11:22:39 am
[info] compiling 1 Scala source to /Users/jz/code/zinc-bug-release-flag/target/scala-2.12/classes ...
[info] Non-compiled module 'compiler-bridge_2.12' for Scala 2.12.14. Compiling...
[info]   Compilation completed in 5.956s.
[success] Total time: 7 s, completed 2 Jun. 2021, 11:22:46 am
==== ROUND 2 ====
[info] welcome to sbt 1.5.3 (AdoptOpenJDK Java 11.0.11)
[info] loading project definition from /Users/jz/code/zinc-bug-release-flag/project
[info] loading settings for project zinc-bug-release-flag from build.sbt ...
[info] set current project to zinc-bug-release-flag (in build file:/Users/jz/code/zinc-bug-release-flag/)
[info] Executing in batch mode. For better performance use sbt's shell
[info] compiling 1 Scala source to /Users/jz/code/zinc-bug-release-flag/target/scala-2.12/classes ...
[success] Total time: 3 s, completed 2 Jun. 2021, 11:22:53 am
[debug] [zinc] IncrementalCompile -----------

After:
> rm -rf /Users/jz/.sbt/boot/scala-2.12.14/org.scala-sbt/sbt/1.5.4-SNAPSHOT && sbt --sbt-version 1.5.4-SNAPSHOT clean compile && echo "==== ROUND 2 ====" && sbt  --sbt-version 1.5.4-SNAPSHOT compile 'last compileIncremental'
[info] [launcher] getting org.scala-sbt sbt 1.5.4-SNAPSHOT  (this may take some time)...
[info] welcome to sbt 1.5.4-SNAPSHOT (N/A Java 15.0.2)
[info] loading project definition from /Users/jz/code/zinc-bug-release-flag/project
[info] loading settings for project zinc-bug-release-flag from build.sbt ...
[info] set current project to zinc-bug-release-flag (in build file:/Users/jz/code/zinc-bug-release-flag/)
[info] Executing in batch mode. For better performance use sbt's shell
[success] Total time: 0 s, completed 2 Jun 2021, 1:40:47 pm
[info] compiling 1 Scala source to /Users/jz/code/zinc-bug-release-flag/target/scala-2.12/classes ...
[success] Total time: 2 s, completed 2 Jun 2021, 1:40:50 pm
==== ROUND 2 ====
[info] welcome to sbt 1.5.4-SNAPSHOT (N/A Java 15.0.2)
[info] loading project definition from /Users/jz/code/zinc-bug-release-flag/project
[info] loading settings for project zinc-bug-release-flag from build.sbt ...
[info] set current project to zinc-bug-release-flag (in build file:/Users/jz/code/zinc-bug-release-flag/)
[info] Executing in batch mode. For better performance use sbt's shell
[success] Total time: 0 s, completed 2 Jun 2021, 1:40:53 pm
[debug] [zinc] IncrementalCompile -----------
[debug] IncrementalCompile.incrementalCompile
[debug] previous = Stamps for: 1 products, 1 sources, 1 libraries
[debug] current source = Set(${BASE}/src/main/scala/test.scala)
[debug] > initialChanges = InitialChanges(Changes(added = Set(), removed = Set(), changed = Set(), unmodified = ...),Set(),Set(),API Changes: Set())
[debug] No changes

To validate this pull request against other sbt modules, please visit this link.


ebiten: Change the default of RunnableOnUnfocused to be true

Now an Ebiten application suspends on unfocused by default. I thought this was a good default behavior, but now I am not sure as many existing games don't do this. Then, I'm thinking to change this behavior. As this is be a breaking change, this would be introduced in v2.
Any thoughts?

I think it makes sense to be unfocused by default.

If I'm playing a single player game, I'd expect the game to pause/stop running on unfocus.
If I'm playing a multiplayer game, then I'd expect it to keep running if I lost focus. (When testing a networked game too, you end up naturally realizing you need to disable pausing on unfocus and so you do so)

With that in mind I'd say most folks are going to be making single player games with Ebiten, so it probably makes sense to keep things that way.

I think it makes sense to be unfocused by default.

You mean the game should be suspended when unfocused?

With that in mind I'd say most folks are going to be making single player games with Ebiten, so it probably makes sense to keep things that way.

Makes sense, but Ebiten's suspension seems a little strong (e.g., stopping music) and I'm not confident this is a good way for the majority.
BTW, even if IsRunnableOnUnfocused() is true, the game developer can handle it by IsFocused and render a pause screen for example.


[Bug]: User context - winget not installed or detected

The problem
Installed Winget-AutoUpdate 1.17.8 via Intune on a fresh machine with the -InstallUserContext parameter in install string. When system context finishes it enters user context correctly but throws error that winget is not installed or detected:

Should Winget-AutoUpdate automatically install winget to the user context so it can function? Or is there an external prerequisite required to install winget for each user on the system?
What version of WAU has the issue?
1.17.8
What version of Windows are you using (ex. Windows 11 22H2)?
Windows 10 22H2
What version of winget are you using?
1.5.1881
Log information
No response
Additional information
No response

Ignore, after a little bit of time + reboot winget was installed to user context. I was too impatient :)


File uploader

Containerized code so frontend can be run on server with quick docker build command followed by docker run. Substituted Quart for Flask because its ability to handle requests asynchronously will make the server more responsive and increase amount of traffic that can be handled because it won't hang on blocking calls while waiting for a response. Updated file uploader to handle both single file or multiple files and demonstrate handling via writing to disk.
Follow on dev wish-list:
Browser checks file mime-type client-side, the file handler also needs to check mime-type server-side, clients should never be trusted (code for this already written just needs integration).
Actual processing and prediction needs to be layered in.
Consider adding sessions cookies to throttle use on a per user basis and block lack of session cookie (nothing strict just some basic limits and no involved code to try and defeat common ways of circumventing this type of measure recommended at this time)
Testing!

I would squash the commits into one so it's easy to track later.
git rebase -i HEAD~9
squash all but first commit


Unversioned journal => versioned journal based on READ from Datastore

Get a versioned cache of data without pushing new cache to Datastore

Codecov Report

Merging #213 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #213   +/-   ##
=======================================
  Coverage   62.87%   62.87%
=======================================
  Files          36       36
  Lines        1910     1910
  Branches      140      140
=======================================
  Hits         1201     1201
  Misses        709      709

Continue to review full report at Codecov.

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


Do not unwrap ready future

if the outer future of a future is ready we don't need to allocate a new
shared state while unwrapping

This breaks one of our applications (the application hangs randomly). I'm going to revert this change for now.


Filename convention

It would be good to have a filename convention, something like [state]-[city].md.

Agreed. I'll add this to the teams guidelines

Added in #611

quick proposal on this, what about restructuring the _emails directory with a subfolder per state? that way as the list grows, it's still clear what emails are in which location at a glance

I also like that

@Ceshion If we go this route, should we let the [state] in the filename? [state]/[state]-[city].md or [state]/[city].md?

I think state/city.md- there's no need for redundancy there, right?

If there is no benefit to this redundancy then ok.
Also, I didn't notice, there is a third "object" (eg. "mayor", "senator", etc.), let's call it the target for now.
state and city are separated by a /, but how should we separate the city and the target (- or _) ?
And spaces inside an "object" are replaced by - or _?
Let's take Sioux Falls, South Dakota as an example.

south-dakota/sioux-falls_mayor.md
south_dakota/sioux_falls-mayor.md
sd/sioux_falls-mayor.md
sd/sioux-falls_mayor.md

Gonna close this out as we restructured to
_emails/$state/$city.md
Hard to align on *.md vs *.markdown, because our CMS will add new files as markdown. Not a huge deal to clean them up later.


System.Memory restrictions cause invalid delimiter in paket.lock file

Description
When i run "paket update", my packages are updated. However when i run "dotnet restore" afterwards I get the following error:
 dotnet restore
  Paket version 5.142.0
  Performance:
   - Runtime: 2 seconds
  Paket failed with
  -> Error during parsing of '/home/TestProject/paket.lock'.
  -> Could not parse 'framework: restriction: || (&& (< net46) (< netcoreapp2.1) (>= netstandard2.0)) (>= netcoreapp2.0) (>= uap10.1)' as key/value pairs.
  -> invalid delimiter at position 22
/home/user/TestProject/.paket/Paket.Restore.targets(78,5): error MSB3073: The command "mono --runtime=v4.0.30319 "/home/user/TestProject/.paket/paket.exe" restore" exited with code 1.

I looked into the paket.lock file and searched for the restriction.
Before updating the packages the restrictions of Microsoft.Win32.Registry (4.4) are:
    Microsoft.Win32.Registry (4.4) - restriction: >= netcoreapp2.0
      Microsoft.NETCore.Platforms (>= 2.0) - restriction: >= netcoreapp2.0
      System.Security.AccessControl (>= 4.4) - restriction: || (&& (>= monoandroid) (< netstandard1.3)) (>= monotouch) (&& (< net46) (>= netstandard2.0)) (>= net461) (>= netcoreapp2.0) (>= xamarinios) (>= xamarinmac) (>= xamarintvos) (>= xamarinwatchos)
      System.Security.Principal.Windows (>= 4.4) - restriction: || (&& (>= monoandroid) (< netstandard1.3)) (>= monotouch) (&& (< net46) (>= netstandard2.0)) (>= net461) (>= netcoreapp2.0) (>= xamarinios) (>= xamarinmac) (>= xamarintvos) (>= xamarinwatchos)

After updating the packages the restrictions change and a new package called System.Memory is added:
  Microsoft.Win32.Registry (4.5) - restriction: >= netcoreapp2.0
      System.Memory (>= 4.5) - restriction: || (&& (< net46) (< netcoreapp2.1) (>= netstandard2.0)) (>= netcoreapp2.0) (>= uap10.1)
      System.Security.AccessControl (>= 4.5) - restriction: || (>= monoandroid) (>= monotouch) (&& (< net46) (>= netstandard2.0)) (>= net461) (>= netcoreapp2.0) (>= netcoreapp2.1) (>= xamarinios) (>= xamarinmac) (>= xamarintvos) (>= xamarinwatchos)
      System.Security.Principal.Windows (>= 4.5) - restriction: || (>= monoandroid) (>= monotouch) (&& (< net46) (>= netstandard2.0)) (>= net461) (>= netcoreapp2.0) (>= netcoreapp2.1) (>= xamarinios) (>= xamarinmac) (>= xamarintvos) (>= xamarinwatchos)

The restriction of System.Memory seems to be causing this error for me.
I am not sure where the best place is to submit this issue, as I am not sure if this has something to do with Paket, System.Memory, Microsoft.Win32.Registry or mono, so please tell me if i am in the wrong repository :)
Repro steps

Use a linux distro ( i suspect it could have something todo with mono? or/and running linux), i'm an up-to date Manjaro arch distribution

uname -a
Linux omega 4.14.52-1-MANJARO #1 SMP PREEMPT Tue Jun 26 15:24:31 UTC 2018 x86_64 GNU/Linux

Install a template that still uses an older version of Microsoft.Win32.Registry such as the fable-elmish-react template

dotnet new fable-elmish-react -n awesome -lang f#

Follow the template instructions to get everything to work, using just the template i do not get any issues.

cd src
dotnet restore

Go back to the root directory of the TestProject and run paket update. All packages update how they are meant to

paket update

Go to Src and run dotnet restore, I then get this error:

 dotnet restore
  Paket version 5.142.0
  Performance:
   - Runtime: 2 seconds
  Paket failed with
  -> Error during parsing of '/home/TestProject/paket.lock'.
  -> Could not parse 'framework: restriction: || (&& (< net46) (< netcoreapp2.1) (>= netstandard2.0)) (>= netcoreapp2.0) (>= uap10.1)' as key/value pairs.
  -> invalid delimiter at position 22
/home/user/TestProject/.paket/Paket.Restore.targets(78,5): error MSB3073: The command "mono --runtime=v4.0.30319 "/home/user/TestProject/.paket/paket.exe" restore" exited with code 1.

Expected behavior
I should be able to update my packages and run dotnet restore without any errors
Actual behavior
I get an error when running dotnet restore telling me that there is an invalid delimiter

Your version of Paket is pretty outdated (5.142.0) and it obviously can't parse this restriction.
Can you try to run PAKET_VERSION=5.174.2 dotnet restore once to update Paket? I wonder why the bootstrapper didn't update Paket itself.

thank you @inosik!
so the command   PAKET_VERSION=5.174.2 dotnet restore, it still used the old version.
however i checked the .paket folder and realized that the elmish template i was using (https://github.com/elmish/templates/blob/master/.paket/paket.exe) did not use the bootstrap version of paket. and therefore it did not update. I now replace the paket.exe file with the latest bootstrap version and it seems to work now :+1:

The template uses Pakets "magic mode", that is the bootstrapper renamed to paket.exe.
The bootstrapper in the template should be fine, it's the version with the fixed TLS configuration. I use a globally installed 5.142.0 on my machine as well.

@inosik the paket.exe file in the template is 8.02 MB this is why i think that it is not the bootstrapped version, but maybe im wrong

You're right, I only looked at the commit message in the repository.


File 'package.json' not found.

It would be great if we could manually specify the npm path. My npm is not installed on the root of the project so this tool cant find the package.json.
Full error: "File 'package.json' not found. Make sure that you have run npm install and that you are inside a react-native project."

Specify js project work directory, eg ./jsapp , you must create a file named .idea/.rnconsole, which content should like this:
{
currentPath: './jsapp'
}
after that all npm commands will use this as working dir, please give a try.

That worked. Thanks for the quick reply.
I think you should do some styling on your README.


Release on Modrinth.com

Modrinth is an alternative to curseforge which is way better in a few key aspects:

Proper filtering

on curseforge you can search for 1.17 mods, or fabric mods, not 1.17 fabric mods
it also has client/server mod filters

Fast searches

It takes nanoseconds for the search results to update to what you have typed, as opposed to the 3-5 seconds curseforge does

Easier API integration

Well documented, easy to use api
You can ask for support from actual humans

Along with this, there are a bunch of people who would like to use your mod, but won't go to curseforge to get it.

I'll consider it.
It looks like Modrinth is missing a lot of features and isn't as widely used, yet.
Plus, putting up all the old versions of the mod will take a good amount of time, which I unfortunately do not have right now.
For now, the mod can be downloaded from Github as well, but yeah I get that the average user will probably not find it here.

The mod is now up on Modrinth!


Database Memory Usage Percentage is off by 2 decimals

This metric is off by 2 decimals. For Eg., 0.26% instead of 26%

Apologies for the delay. This is fixed in v0.4.67.


Support for Nested Schema of Lists and Structs

Hi! I am trying to store NCBI_BLAST data with arrow. In my use case the data is grouped and tabular with each group having duplicated data in ID columns (like name, ID, taxon etc). If apache-arrow could support nested lists and structs, I can create a schema which would eliminate such duplications.  Pardon me if such a design is by choice
Component(s)
Archery, C++

Seems arrow has struct and list datatype, see: https://arrow.apache.org/docs/python/api/datatypes.html

Thank you. How can I make a List of Structs?
My Current schema looks like this :
 seq_info_type = arrow::struct_({
      arrow::field("num_alignments", arrow::int8()),
      arrow::field("seqids", arrow::struct_({arrow::field("qseqid", arrow::utf8()),
                                             arrow::field("sseqid", arrow::utf8())})),
      arrow::field("seqs", arrow::struct_({arrow::field("qseq", arrow::large_utf8()),
                                           arrow::field("sseq", arrow::large_utf8())})),
      arrow::field("strands", arrow::utf8()),
      arrow::field("lengths", arrow::struct_({arrow::field("qlen", arrow::int8()),
                                              arrow::field("slen", arrow::int8())})),
  });
  hsp_type = arrow::struct_({arrow::field("pident", arrow::float64()),
 /*fill with data*/
                             arrow::field("comp_adj_method", arrow::float64())});

  alignment_scores_type = arrow::list({hsp_type});

  blast_schema = arrow::schema({arrow::field("seq_info", seq_info_type),
                                arrow::field("hsps", hsp_type)});

I want to use  alignment_scores_type in blast_schema instead of the struct hsp_type so that I can store some meta-info in seq_info_type and have a variable length List of Structs with the data. This was disallowed in 13.0.0 (yet to check in 14.0.1)


squashctl refactoring kube client

Fixes to allow squashctl to run without a kube context to output version and help information.

/kick

/kick


Typo

Looks like there is a typo in step 3 under Configuring Azure AD single sign-on. Cotoso.logicmonitor.com instead of Contoso.logicmonitor.com.

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

ID: ccfaa610-6133-8bc0-54b9-bc8b9a756963
Version Independent ID: 3ed4027b-ce9a-e1c1-ae74-0bda37a1f9bc
Content: Tutorial: Azure Active Directory integration with LogicMonitor
Content Source: articles/active-directory/saas-apps/logicmonitor-tutorial.md
Service: active-directory
GitHub Login: @jeevansd
Microsoft Alias: jeedes

@jeevansd @chetansriv I will work on fixing it and submit the PR request soon. Thanks.

@jeevansd @chetansriv Well as change is required in image and I do not have right to modify image file in the repository, I will move ahead and assign this issue to you for the fix.

@chetansriv Can you please take it in your queue?

@jeevansd Sure Jeevan, I'll get this fixed

Update is getting published now.
So #please-close

@awgraf We will now close this issue. If there are further questions regarding this matter, please reopen it and we will gladly continue the discussion.


Need to solve the "synapse type problem"

Our LIF/DSSynapse model determines synapse type from both pre and postsynaptic neuron. Izhikevich does from presynaptic. We need to develop some abstract way of specifying how synapse type is determined in the parameter file.
Synapses can have a variety of parameters, such as time constant (PSP decay), delay, etc. Right now, this is partially hard-coded (for example in AllSpikingSynapses::createSynapse()). All of this should be pulled into the parameter files.
There likely is more complexity here. We need to spend some time thinking about this.

This connects to issue #183
I'm going to move item 2 from above into a separate issue; it can be dealt with as a detailed, more minor, item.

Merged into #183