text:
Working with Flukso FLM02A?

Just installed your new integration for Home Assistant. Got it working and entered Device-Hashes (I think you mean the "Sensor Identification", don't you?). But nothing is shown in Home Assistant. Only the Integration-Page shows, that I configured it. Does it work with my Flukso-Model FLM02A?
Any Hints?
Thank you.

No the device hash is not a sensor hash. The device has can be found using an MQTT client and listening to topic /device/+/test/tap. The device hash is the second part of the topic.
Hope this helps!

Thank you for your answer. Unfortunately there is never a top like /device/*. Only /sensor/+/counter or /sensor/+/gauge, where + is the ID of the sensor. I am using an older Flukso-Device and installed MQTT as described in the Flusko-Forum. Regarding this Documentation (https://github.com/gebhardm/flm03/blob/main/MQTT.md) the MQTT-Topics are different between Version 2 and 3 of Flukso. Did you develop this piece of Software with a newer Flukso-Device (Version 3)?

I have a Version 2A and I also can't get this to work - I tried using the sensor ID and when that didn't work, i used MQTT Explorer and found a hash similar to what you described, however that also doesn't work. I get the following error  in the supervisor logs:
Logger: homeassistant.components.sensor
Source: custom_components/flukso/discovery.py:348
Integration: Sensor (documentation, issues)
First occurred: 7:47:09 PM (1 occurrences)
Last logged: 7:47:09 PM
Error while setting up flukso platform for sensor
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 249, in _async_setup_platform
await asyncio.shield(task)
File "/config/custom_components/flukso/sensor.py", line 10, in async_setup_entry
configs = get_entities_for_platform("sensor", hass.data[DOMAIN][entry.entry_id])
File "/config/custom_components/flukso/discovery.py", line 372, in get_entities_for_platform
entities.extend(_get_sensor_entities(entry_data, device_info))
File "/config/custom_components/flukso/discovery.py", line 348, in _get_sensor_entities
entities.append(MQTT_SENSOR_PLATFORM_SCHEMA(config))
File "/usr/local/lib/python3.9/site-packages/voluptuous/validators.py", line 218, in call
return self._exec((Schema(val) for val in self.validators), v)
File "/usr/local/lib/python3.9/site-packages/voluptuous/validators.py", line 341, in _exec
raise e if self.msg is None else AllInvalid(self.msg, path=path)
File "/usr/local/lib/python3.9/site-packages/voluptuous/validators.py", line 337, in _exec
v = func(v)
File "/usr/local/lib/python3.9/site-packages/voluptuous/schema_builder.py", line 272, in call
return self._compiled([], data)
File "/usr/local/lib/python3.9/site-packages/voluptuous/schema_builder.py", line 817, in validate_callable
return schema(data)
File "/usr/local/lib/python3.9/site-packages/voluptuous/schema_builder.py", line 272, in call
return self._compiled([], data)
File "/usr/local/lib/python3.9/site-packages/voluptuous/schema_builder.py", line 594, in validate_dict
return base_validate(path, iteritems(data), out)
File "/usr/local/lib/python3.9/site-packages/voluptuous/schema_builder.py", line 432, in validate_mapping
raise er.MultipleInvalid(errors)
voluptuous.error.MultipleInvalid: expected SensorStateClass for dictionary value @ data['state_class']

Thank you for your answer. Unfortunately there is never a top like /device/*. Only /sensor/+/counter or /sensor/+/gauge, where + is the ID of the sensor. I am using an older Flukso-Device and installed MQTT as described in the Flusko-Forum. Regarding this Documentation (https://github.com/gebhardm/flm03/blob/main/MQTT.md) the MQTT-Topics are different between Version 2 and 3 of Flukso. Did you develop this piece of Software with a newer Flukso-Device (Version 3)?

Indeed, I developed it for FLM03, not version 02. I will check with Flukso if we can easily support version 02 as well.

Which version of HA are you using?

Just added my Flukso V02 as Sensors in HA:
`- platform: mqtt
unique_id: fxxxxxxb12-cf84-4225-8e25-fa091111180e
state_topic: "/sensor/sensorid/gauge"
device_class: energy
name: "Aktueller Stromverbrauch"
qos: 0
unit_of_measurement: "W"
value_template: '{{ value_json[1] }}'

platform: mqtt
unique_id: xxxxxxxxxx-60e8-42c0-8bd1-6f37c785ae9f
state_topic: "/sensor/sensorid/counter"
device_class: energy
name: "Summe Stromverbrauch"
qos: 0
unit_of_measurement: "Wh"
value_template: "{{ value_json[1] }}"

platform: mqtt
unique_id: xxxxxxx-53ac-4a4a-bc0c-7c9f8fee2144
state_topic: "/sensor/sensorid/counter"
device_class: gas
name: "Summe Gasverbrauch"
qos: 0
unit_of_measurement: "m3"
value_template: '{{ value_json[1] }}'

platform: mqtt
unique_id: xxxxxxxxx-6e24-42bf-b49f-2168ea27cf6b
state_topic: "/sensor/sensorid/counter"
name: "Summe Wasserverbrauch"
qos: 0
unit_of_measurement: "m3"
value_template: '{{ value_json[1] }}'`

Just added my Flukso V02 as Sensors in HA. May be this would help you for your development.
- platform: mqtt
  unique_id: fxxxxxxb12-cf84-4225-8e25-fa091111180e
  state_topic: "/sensor/sensorid/gauge"
  device_class: energy
  name: "Aktueller Stromverbrauch"
  qos: 0
  unit_of_measurement: "W"
  value_template: '{{ value_json[1] }}'

- platform: mqtt
  unique_id: xxxxxxxxxx-60e8-42c0-8bd1-6f37c785ae9f
  state_topic: "/sensor/sensorid/counter"
  device_class: energy
  name: "Summe Stromverbrauch"
  qos: 0
  unit_of_measurement: "Wh"
  value_template: "{{ value_json[1] }}"

- platform: mqtt
  unique_id: xxxxxxx-53ac-4a4a-bc0c-7c9f8fee2144
  state_topic: "/sensor/sensorid/counter"
  device_class: gas
  name: "Summe Gasverbrauch"
  qos: 0
  unit_of_measurement: "m3"
  value_template: '{{ value_json[1] }}'

- platform: mqtt
  unique_id: xxxxxxxxx-6e24-42bf-b49f-2168ea27cf6b
  state_topic: "/sensor/sensorid/counter"
  name: "Summe Wasserverbrauch"
  qos: 0
  unit_of_measurement: "m3"
  value_template: '{{ value_json[1] }}'

This is basically what this integration does, but automatically.

@vk2him Which version of HA are you using?
Could you test with the newest version 1.0.1? Can you add the debug logs?

I'm running 2021.12.10 - I loaded the newest version, looks like it can see my 3 x Flukso sensors from the following error that is now displayed in logs:
This error originated from a custom integration.
Logger: custom_components.flukso.discovery
Source: custom_components/flukso/discovery.py:355
Integration: Flukso (documentation, issues)
First occurred: 8:43:56 AM (18 occurrences)
Last logged: 8:43:56 AM
Could not convert config to to MQTT sensor config for id xxxxx1fad2e6701e5aa87ab0208187a9
Could not convert config to to MQTT sensor config for id xxxxx9347c8f5e886af1d95df7228ac0
Could not convert config to to MQTT sensor config for id xxxxx298ca289494c7109b1ea53efa7e

@vk2him You should use the device hash, not the sensor hash, in the configuration. You can find this hash on MQTT when subscribing to /device/#. The sensors should then be discovered automatically.
Let me know if this works for you.

I am not using the sensor hash - I am using the hash from /device/#  - there are two hashes under /device/#  - here is a redacted view from MQTT Explorer:
device fe779fd84ce66d210be26fc6xxxx config sensor = {"mqtt":{"bridge_restart_timeout":30,"bridge_address":"api.flukso.net","bridge_port":8883,"bridge_keepalive":60},"1":{"id":"bc6291fad2e6701e5aa87ab020xxxxx","class":"analog","enable":1,"type":"electricity","function":"HWS","port":[1],"current":50,"rid":0,"data_type":"counter","voltage":240},"10":{"id":"f1be5939cb19f6c29005df4cxxxxx"},"3":{"id":"a2e8c6893fe8e11e7c17c1d1e6efxxxxx","class":"pulse"… f9608fd6fe41357fc51a0e5xxxxxxx config kube = {"main":{"encryption":0,"max_nodes":30,"pair_group":212,"null_key":"0123456789abcdef0123456789abcdef","cache":"/usr/share/kube","collect_group":40,"key":"497dbbc8634b15cb6a88e1066xxxxxx"}} sensor = {"53":{"id":"755256a871b0dc37e36309fbxxxx"},"43":{"id":"43df77ea804ebf3bd296cfd0xxxxx"},"63":{"id":"839911a4e32a63062517386e8xxxxx"},"47":{"id":"9af5d61e4f7c0988eeff7bbd53xxxxxx"},"37":{"id":"8bfd36840bc4335d474a98d1xxxxx"},"57":{"id":"a1d80f443f2f806073277563cxxxxx"},"27":{"id":"6002ad8813d5da6f40120e1e0xxxxxx"},"17":{"id":"9a8ae37d4b7e88581ad100c1xxxxx"},"13":{"id":"2669a59xxxx
To be clear, I'm using the /device/fe779fd84ce66d210be26fc6xxxx  hash - is this the one correct?
Thanks

@bertouttier
Here's an easier to see screenshot of MQQT Explorer pointed to my Flukso. I'm using fe779fd84ce66d210be26fc6xxxx and not sensor hashes.

@vk2him Thank you, that is helpful. Can you set the log level of the flukso component to debug and provide me the logs?
logger:
  default: warning
  logs:
    custom_components.flukso: debug

Here's the detailed logs - note the last 3 errors are repeated many times:
Could not convert config to to MQTT sensor config for id bc6291fad2e6701e5aa87abxxxx
9:07:22 PM – (ERROR) Flukso (custom integration) - message first occurred at 9:07:22 PM and shows up 18 times
2022-01-31 21:07:17 DEBUG (MainThread) [custom_components.flukso.discovery] storing config type sensor for device fe779fd84ce66d210be26fxxxx
2022-01-31 21:07:22 DEBUG (MainThread) [custom_components.flukso.discovery] test tap pending, FLM02?
2022-01-31 21:07:22 DEBUG (MainThread) [custom_components.flukso.discovery] all configs and tap received
2022-01-31 21:07:22 ERROR (MainThread) [custom_components.flukso.discovery] Could not convert config to to MQTT sensor config for id bc6291fad2e6701e5aa87ab0xxxx
2022-01-31 21:07:22 DEBUG (MainThread) [custom_components.flukso.discovery] {'name': 'unknown electricity', 'device': {'connections': [], 'identifiers': {('flukso', 'fe779fd84ce66d210be26fxxx')}, 'manufacturer': 'Flukso', 'name': 'fe779fd84ce66d210be26fc6exxx', 'sw_version': 'unknown'}, 'enabled_by_default': True, 'platform': 'mqtt', 'state_topic': '/sensor/bc6291fad2e6701e5aa87ab0208187a9/q1', 'state_class': None, 'qos': 0, 'force_update': True, 'unique_id': 'fe779fd84ce66d210be26fc6efxxxxx_bc6291fad2e6701e5aa87ab020xxxxxx_q1', 'icon': 'mdi:lightning-bolt', 'value_template': '{{ value.split(",")[1] | float }}'}
2022-01-31 21:07:22 ERROR (MainThread) [custom_components.flukso.discovery] Could not convert config to to MQTT sensor config for id 6143e9347c8f5e886af1d95dxxxx
2022-01-31 21:07:22 DEBUG (MainThread) [custom_components.flukso.discovery] {'name': 'unknown electricity', 'device': {'connections': [], 'identifiers': {('flukso', 'fe779fd84ce66d210be26fcxxx')}, 'manufacturer': 'Flukso', 'name': 'fe779fd84ce66d210be26fc6exxxxx', 'sw_version': 'unknown'}, 'enabled_by_default': True, 'platform': 'mqtt', 'state_topic': '/sensor/6143e9347c8f5e886af1d95dxxxx/pminus', 'state_class': None, 'qos': 0, 'force_update': True, 'unique_id': 'fe779fd84ce66d210be26fc6efxxxxx_6143e9347c8f5e886af1d95xxxx_pminus', 'icon': 'mdi:lightning-bolt', 'value_template': '{{ value.split(",")[1] | float }}'}
2022-01-31 21:07:22 ERROR (MainThread) [custom_components.flukso.discovery] Could not convert config to to MQTT sensor config for id 48106298ca289494c7109b1eaxxxxxx
2022-01-31 21:07:22 DEBUG (MainThread) [custom_components.flukso.discovery] {'name': 'unknown electricity', 'device': {'connections': [], 'identifiers': {('flukso', 'fe779fd84ce66d210be26fc6xxxxx')}, 'manufacturer': 'Flukso', 'name': 'fe779fd84ce66d210be26xxxxx', 'sw_version': 'unknown'}, 'enabled_by_default': True, 'platform': 'mqtt', 'state_topic': '/sensor/48106298ca289494c7xxxx/q1', 'state_class': None, 'qos': 0, 'force_update': True, 'unique_id': 'fe779fd84ce66d210be26fc6exxxx_48106298ca289494c7109xxxx_q1', 'icon': 'mdi:lightning-bolt', 'value_template': '{{ value.split(",")[1] | float }}'}

Thans @vk2him , that is very helpful. I will have a look and post an update if I have a new version.

@vk2him can you test with version 1.0.2?

@bertouttier - version 1.0.2 doesn't seem to be available so removed the integration, rebooted, then copied the modified version of discovery.py you just did to overwrite the old version, then rebooted and tried to add the integration again.
I can't load the integration now - after selection Flukso from the Integrations page it pops up a window with the following error:
Error
Config flow could not be loaded
The logfile shows this error:
Error handling request
8:45:13 AM – (ERROR) Flukso (custom integration)
Logger: aiohttp.server
Source: custom_components/flukso/init.py:9
Integration: Flukso (documentation, issues)
First occurred: 8:45:13 AM (1 occurrences)
Last logged: 8:45:13 AM
Error handling request
Traceback (most recent call last):
File "/usr/local/lib/python3.9/site-packages/aiohttp/web_protocol.py", line 435, in _handle_request
resp = await request_handler(request)
File "/usr/local/lib/python3.9/site-packages/aiohttp/web_app.py", line 504, in _handle
resp = await handler(request)
File "/usr/local/lib/python3.9/site-packages/aiohttp/web_middlewares.py", line 117, in impl
return await handler(request)
File "/usr/src/homeassistant/homeassistant/components/http/security_filter.py", line 60, in security_filter_middleware
return await handler(request)
File "/usr/src/homeassistant/homeassistant/components/http/forwarded.py", line 98, in forwarded_middleware
return await handler(request)
File "/usr/src/homeassistant/homeassistant/components/http/request_context.py", line 28, in request_context_middleware
return await handler(request)
File "/usr/src/homeassistant/homeassistant/components/http/ban.py", line 78, in ban_middleware
return await handler(request)
File "/usr/src/homeassistant/homeassistant/components/http/auth.py", line 181, in auth_middleware
return await handler(request)
File "/usr/src/homeassistant/homeassistant/components/http/view.py", line 137, in handle
result = await result
File "/usr/src/homeassistant/homeassistant/components/config/config_entries.py", line 130, in post
return await super().post(request)
File "/usr/src/homeassistant/homeassistant/components/http/data_validator.py", line 62, in wrapper
result = await method(view, request, *args, **kwargs)
File "/usr/src/homeassistant/homeassistant/helpers/data_entry_flow.py", line 71, in post
result = await self._flow_mgr.async_init(
File "/usr/src/homeassistant/homeassistant/data_entry_flow.py", line 203, in async_init
flow, result = await task
File "/usr/src/homeassistant/homeassistant/data_entry_flow.py", line 221, in _async_init
flow = await self.async_create_flow(handler, context=context, data=data)
File "/usr/src/homeassistant/homeassistant/config_entries.py", line 718, in async_create_flow
integration.get_platform("config_flow")
File "/usr/src/homeassistant/homeassistant/loader.py", line 530, in get_platform
cache[full_name] = self._import_platform(platform_name)
File "/usr/src/homeassistant/homeassistant/loader.py", line 535, in _import_platform
return importlib.import_module(f"{self.pkg_path}.{platform_name}")
File "/usr/local/lib/python3.9/importlib/init.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "", line 1030, in _gcd_import
File "", line 1007, in _find_and_load
File "", line 972, in _find_and_load_unlocked
File "", line 228, in _call_with_frames_removed
File "", line 1030, in _gcd_import
File "", line 1007, in _find_and_load
File "", line 986, in _find_and_load_unlocked
File "", line 680, in _load_unlocked
File "", line 850, in exec_module
File "", line 228, in _call_with_frames_removed
File "/config/custom_components/flukso/init.py", line 9, in
from .discovery import async_discover_device
File "/config/custom_components/flukso/discovery.py", line 406
dts = _get_sensor_detail(sensor, DATA_TYPE_MAP_FLM03):
^
SyntaxError: invalid syntax

@vk2him sorry about that, version 1.0.3 pushed.

@bertouttier - thank you - it's working perfectly now ... as a suggestion for your documentation, it would be nice if you documented how to obtain the /device hash as people may assume its the sensor hash? Thanks Again!

@vk2him thanks for your help and your suggestion. I will update the docs!

authors: andbez bertouttier vk2him

repo: bertouttier/flukso-hacs


text:
add basic setup for portrait testing

This commit adds a "TestPortraits.lua" file with a few variables for basic testing to make portrait viewing/debugging easier.

Thank you for setting this up

source: gharchive/pull-request

repo: besteon/Ironmon-Tracker

license: MIT

license_type: permissive

license_source: github-api


text:
Fix popperjs import for SvelteKit

Closes https://github.com/bestguy/sveltestrap/issues/463
Closes https://github.com/bestguy/sveltestrap/issues/474
Closes https://github.com/bestguy/sveltestrap/issues/517
This updates @popperjs/core to the latest version, which no longer uses process.env, so it will work in the REPL
Import popper the normal way. Then Vite can use the CJS version on the server-side and ESM version on the client-side. Forcing it to always be ESM breaks SSR with the latest SvelteKit. See https://github.com/vitejs/vite/issues/4569 / https://github.com/sveltejs/kit/issues/2161

Hi, thanks.  Popper was giving troubles in Sapper and svelte.repl without this though due to use of node.env in their distribution.  I'll need to take a look at if this still works there.

Related to this issue: https://github.com/bestguy/sveltestrap/issues/250

Two wrongs don't make a right :smile: We should fix it in popper core. I sent a PR there: https://github.com/popperjs/popper-core/pull/1342
Sapper's deprecated at this point. In the short-term, I'd rather have it working in SvelteKit and broken in the REPL and Sapper than vice versa since SvelteKit will be the main way people will be consuming the library. Hopefully in the medium-term we can get popper.js itself fixed rather than trying to work around the issue

Agreed popper would be great to fix, but I and other users use sapper and repl frequently and would rather not break that.  I'll see if there's something we can do.  I had debated forking popper as well to remove, but eh.

Agreed popper would be great to fix, but I and other users use sapper and repl frequently and would rather not break that. I'll see if there's something we can do. I had debated forking popper as well to remove, but eh.

Actually SvelteStrap works fine with SvelteKit now if you do import from root (a regular way), no changes needed.

Ah thanks @vfilatov , does sveltekit not need the src imports for SSR such as sapper needed?

Ah thanks @vfilatov , does sveltekit not need the src imports for SSR such as sapper needed?

After SvelteKit v1.0.0-next.146 no, it does not.
  import {
    Alert,
    Badge,
    Button,

    Modal,
    ModalHeader,
    ModalBody,
    ModalFooter
  } from 'sveltestrap';

Ah, the example I was debugging did import from src. I didn't even notice that. https://github.com/sveltejs/kit/issues/2161#issue-965482733
I do still think this is a good change, but I guess we can wait until popper itself is fixed
In the meantime, I sent a PR to update the readme: https://github.com/bestguy/sveltestrap/pull/359

also in https://github.com/bestguy/sveltestrap/blob/master/src/Tooltip.svelte#L3

Bump, would love to see this merged!

@bestguy my PR https://github.com/floating-ui/floating-ui/pull/1342 was merged to fix popper-core. Could this be merged now as a result?

looks like they reverted it https://github.com/floating-ui/floating-ui/pull/1362 (would have been a breaking change)
is it an option to switch to floatingui core?

It looks like it's been fixed on the main branch for an eventual v3 https://github.com/floating-ui/floating-ui/pull/1502 and that https://github.com/floating-ui/floating-ui/pull/1526 would backport it to 2.x
Anyway, I wonder if the original reason for not merging this still applies. It was said that we wanted to prioritize Sapper over SvelteKit, but that was over a year ago. Now SvelteKit has almost 2x the usage of Sapper and so I would think that it would be better to prioritize SvelteKit over Sapper. Would that logic make sense to you @bestguy? If you're still on Sapper by chance, I'd be happy to advice on a migration to SvelteKit

Is there any alternative or workaround that can be used before this PR get merged?

I am experiencing the same issue with Sveltestrap.  It actually prevents me from running SvelteKit.  I'd really like to use bootstrap for svelte app dev.  Any workarounds would be appreciated, and we really need a proper fix to this.  Thanks.
Cannot use import statement outside a module
/Users/john/projects/dems/node_modules/@popperjs/core/dist/esm/popper.js:1
import { popperGenerator, detectOverflow } from "./createPopper.js";
^^^^^^
SyntaxError: Cannot use import statement outside a module
at Object.compileFunction (node:vm:352:18)
at wrapSafe (node:internal/modules/cjs/loader:1032:15)
:
With this package.json:
{
"name": "dems",
"version": "0.0.1",
"scripts": {
"dev": "svelte-kit dev",
"build": "svelte-kit build",
"package": "svelte-kit package",
"preview": "svelte-kit preview",
"prepare": "svelte-kit sync"
},
"devDependencies": {
"@sveltejs/adapter-auto": "next",
"@sveltejs/kit": "next",
"svelte": "^3.47.0"
},
"type": "module",
"dependencies": {
"@fontsource/fira-mono": "^4.5.0",
"@lukeed/uuid": "^2.0.0",
"bootstrap": "^5.1.3",
"cookie": "^0.4.1",
"sveltestrap": "^5.9.0"
}
}

I use manual add
{
  "name": "@popperjs/core",
  "type": "module", // <<<<<<<<<<<<<
  "version": "2.11.5",

to ./node_modules/.pnpm/node_modules/@popperjs/core/package.json
as temporary workaround

I am experiencing the same issue with Sveltestrap. It actually prevents me from running SvelteKit. I'd really like to use bootstrap for svelte app dev. Any workarounds would be appreciated, and we really need a proper fix to this. Thanks.
Cannot use import statement outside a module /Users/john/projects/dems/node_modules/@popperjs/core/dist/esm/popper.js:1 import { popperGenerator, detectOverflow } from "./createPopper.js"; ^^^^^^
SyntaxError: Cannot use import statement outside a module at Object.compileFunction (node:vm:352:18) at wrapSafe (node:internal/modules/cjs/loader:1032:15) :
With this package.json:
{ "name": "dems", "version": "0.0.1", "scripts": { "dev": "svelte-kit dev", "build": "svelte-kit build", "package": "svelte-kit package", "preview": "svelte-kit preview", "prepare": "svelte-kit sync" }, "devDependencies": { "@sveltejs/adapter-auto": "next", "@sveltejs/kit": "next", "svelte": "^3.47.0" }, "type": "module", "dependencies": { "@fontsource/fira-mono": "^4.5.0", "@lukeed/uuid": "^2.0.0", "bootstrap": "^5.1.3", "cookie": "^0.4.1", "sveltestrap": "^5.9.0" } }

I ran into the same issue. I use SvelteKit (1.0.0-next.338 as of writing) and my project could not start up because of the above detailed issue.

Is there any alternative or workaround that can be used before this PR get merged?
Edit: I found that the fork by laxadev/sveltestrap is working fine without any errors. I install its dependencies by running npm i git+https://github.com/laxadev/sveltestrap.git.

The fork suggested by @ynshung worked flawlessly for me.

I have compiled some of the PRs opened into one + updated the dependencies (patch & minor, not major)

the PR : https://github.com/bestguy/sveltestrap/pull/488
the corresponding fork : https://github.com/ClapClap-app/sveltestrap/
to use it : npm i -D github:ClapClap-app/sveltestrap

As proposed in another issue, we should organize ourselves to maintain an "official" fork :)

Everyone, and @benmccann @kbsali , I really appreciate the PRs and desire to fix this for SvelteKit, but none of these fixes and forks changing to '@popperjs/core' correct the root issue, which is why the PRs to change popper imports have not been merged after so long.
I've tried the same in past as I mentioned, but I've been unwilling to break the Svelte REPL.   This is not deprecated AFAIK, and I'm a heavy user with Sveltestrap.   (I know Sapper is deprecated so I wont worry about that one any longer).
Upgrading to Floating UI won't fix this either, as they continue the process.env usage:  https://floating-ui.com/docs/getting-started#package-entry-points , and they have not accepted PRs in past to change this.  It's really frustrating but that is their choice.
Only solutions I can think of is:

use something other than popper or floating-ui (please suggest if you are aware of libaries)
Fork popper and remove process.env and use.
Change Svelte REPL rollup config with the workaround popper suggests above.   (I can try and PR/issue there, but that repo seems even less responsive than I am! 😅)

I will gladly take any help or ideas that fixes this if it works on svelte.dev
I really do not want to break this!

Ah, I hadn't realized the REPL issue. Thanks for clarifying.
I've mentioned the REPL issue to the other Svelte maintainers. I'm of two minds as to whether we should makes changes there. On the one hand, there are some libraries that won't work if we don't polyfill process.env. On the other hand, we should discourage process.env usage. Perhaps there's some third option like an advanced mode to let you edit the Rollup config. It's not a simple case to decide what is ideal. We can certainly review a PR if we decide, but deciding is not easy.
It's not clear to me that floating-ui has rejected replacing process.env. It was the PR author who closed the PR (https://github.com/floating-ui/floating-ui/pull/2029). This would be the best solution, so I think we should pursue it still. I think we just need to do the work to make sure it works in all cases and the maintainers are comfortable that it works in all cases.
In the meantime, usage with either the REPL or SvelteKit is impacted. I'm a bit surprised about picking the REPL over SvelteKit since many more users will be using SvelteKit. Also, there is currently a workaround implemented which hides the true issue contributing to it not being resolved yet. StackBlitz could be used for demos of this library rather than the REPL since there you have access to the Rollup config and can modify it as required.

I'm making PRs to remove these in both Popper and Floating UI. I don't think they're worth the trouble anymore, especially since the lib is usually used transitively.

That's great. Once https://github.com/floating-ui/floating-ui/pull/2252 is merged, I can bump this PR to use the latest version of Popper, which should make this library work everywhere

I'm surprised this is not higher priority. For me, it breaks my first attempt at using sveltestrap altogether.
The "hello world" style example:
<script>
    import { Button } from 'sveltestrap'
</script>
<Button>a bootstrap button</Button>

triggers this error.
Here's my package.json:
{
	"name": "svelte-app",
	"version": "0.0.1",
	"private": true,
	"scripts": {
		"dev": "vite dev",
		"build": "vite build",
		"preview": "vite preview",
		"lint": "prettier --plugin-search-dir . --check . && eslint .",
		"format": "prettier --plugin-search-dir . --write ."
	},
	"devDependencies": {
		"@sveltejs/adapter-auto": "^2.0.0",
		"@sveltejs/kit": "^1.5.0",
		"eslint": "^8.28.0",
		"eslint-config-prettier": "^8.5.0",
		"eslint-plugin-svelte3": "^4.0.0",
		"prettier": "^2.8.0",
		"prettier-plugin-svelte": "^2.8.1",
		"svelte": "^3.54.0",
		"vite": "^4.2.0"
	},
	"type": "module",
	"dependencies": {
		"@sveltejs/adapter-static": "^2.0.1",
		"bootstrap": "^5.2.3",
		"sveltestrap": "^5.10.0"
	}
}

@bestguy my PR was merged to Popper and I updated this PR to use the latest version. You should be able to merge this PR now to make sveltestrap work out-of-the-box with both SvelteKit and the REPL

Which versions in the devDependencies in package.json still work with Sveltestrap out-of-the-box?
  "devDependencies": {
    "@sveltejs/adapter-auto": "^?",
    "@sveltejs/kit": "^?",
    "@typescript-eslint/eslint-plugin": "^?",
    "@typescript-eslint/parser": "^?",
    "eslint": "^?",
    "eslint-config-prettier": "^?",
    "eslint-plugin-svelte": "^?",
    "prettier": "^?",
    "prettier-plugin-svelte": "^?",
    "svelte": "^?",
    "svelte-check": "^?",
    "tslib": "^?",
    "typescript": "^?",
    "vite": "^?"
  }

@bestguy are there any concerns you have that are keeping you from merging this?

@bestguy @gary-mycase just checking in here again. To summarize this uses the latest popper which includes https://github.com/floating-ui/floating-ui/pull/2296, so will now work out-of-the-box in both SvelteKit and the REPL

Thanks @benmccann , let me test over weekend with a pre-release, will try and get this out asap with the 5.3 release

Hurray! Thank you so much!

@bestguy I added one more PR #564

authors: MattPhantastic atomiks avafloww bato3 benmccann bestguy dominikg godmar kbsali king612 laxadev skornel02 vfilatov ynshung

repo: bestguy/sveltestrap

license: mit

license_source: bigquery


text:
PROVENANCE DE NOTRE NOURITURE

bonjour,
je suis vegetarien mais je n’achète que des produits locaux ou bio, cela doit modifier de manière significative le bilan ?

L'impact GES des produits locaux ne se limite malheureusement pas à un calcul de distance. Il faut prendre en compte les taux de remplissage, les déplacements des clients, les véhicules utilisés etc.
Cette question est néanmoins en réflexion. Voir #71

L'impact GES des produits locaux ne se limite malheureusement pas à un calcul de distance. Il faut prendre en compte les taux de remplissage, les déplacements des clients, les véhicules utilisés etc.
Cette question est néanmoins en réflexion. Voir #71

source: gharchive/issue

authors: Benjamin-Boisserie-ABC publicodes

repo: betagouv/ecolab-data


text:
Afficher la date de dernière modification dans la documentation

Afficher une information du type « Dernière modification le 2 janvier 2019 » sur chaque page règle dans la section /documentation. Cette fonctionnalité est disponible sur certains sites de contenu comme service-public.fr. S'il elle n'est pas essentielle elle donne une information supplémentaire à l'utilisateur qui s'interroge par exemple sur l'intégration d'une nouveauté législative ou sur la prise en compte de son retour.
Pour l'implémentation, un script exécuté au build de l'application (comme fetch-news.js) permettrait d'automatiser la récupération de cette information. Il s'agirait d'associer chaque ligne du source à une règle (en se basant sur l'indentation) puis de récupérer la date de dernière modification de chaque ligne (git blame), et de sortir un json associant le nom de chaque règle à sa modification la plus récente ({ 'SMIC .  temps plein' : '01/02/2020' }), qui pourrait ensuite être affiché dans l'UI.

Je ferme en faveur de #1971. Je pense que le plus pertinent sont les dates de modification de la législation que l'on peut intégrer dans le source de modele-social et pas les dates de modifications des fichiers dans git, qui risquent de causer de nombreux faux positifs et d'entraîner une forme de confusion.

repo: betagouv/mon-entreprise


text:
🛑 Samsun Çocuk Gelişimi is down

In a722b2b, Samsun Çocuk Gelişimi (https://samsuncocukgelisimi.com) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Samsun Çocuk Gelişimi is back up in 792f55c after 8 minutes.

repo: betterwithagency/status-page


text:
Ability to use non-default audio device

What problem does this solve or what need does it fill?
Currently, bevy_audio simply initializes audio using the system default device, and there is no way to select anything else. This could result in a poor user experience on systems where there is more than one audio output. It makes it impossible to implement a game/app that offers audio output selection via its own settings.
What solution would you like?
There should be an API for enumerating devices and selecting which one to use.
What alternative(s) have you considered?
Well, users of Bevy apps with multiple audio outputs could just go into their OS settings and make sure their desired device is set as default, before launching a Bevy app/game. If that breaks other apps or messes with their workflow, tough luck.
Additional context
Also of note is that Bevy currently offers no way to change or reinitialize the audio output at runtime. It is only initialized once on app startup.
This causes further issues if devices disappear/reappear (user unplugs/replugs a removable audio output such as a HDMI monitor or wireless headphone dongle), or if the system default changes (from devices appearing/disappearing, or the user changing their OS settings while the app is running).
These issues are all related (it's all due to Bevy being inflexible with its audio output devices), so I thought I would put it all under one GH issue. Overall, audio device management needs to be improved, if Bevy is to have reliable audio output.

Fixing these issues would require being able to "detach" processing from a specific OutputStream and into another, something which I'm afraid wasn't in mind in the design of rodio which we use for the audio engine in bevy_audio, and I'm not sure it would be particulatly easy to implement even upstream. The problem is that handles are intimately linked to instances in the audio thread for processing the audio, which would mean having a way to rip them out of one audio thread and put them into another.
Another solution would be somehow to have a special "Audio" schedule which would be run once with Startup, and then zero or more times when needed to recreate the audio engine. I don't know that an "external" (to bevy_ecs) crate can even execute a schedule in the main app, manually.

authors: SolarLiner inodentry

repo: bevyengine/bevy


text:
Better Asset System: Externals Part 1 - Locator

Introduction
The Engine needs to interoperate with other systems, such as:

the file system,
a http(s) server,
stdio,
…,
a logical abstraction over another system

It does so by getting input from and giving output to those systems in constructs provided by these systems, such as:

a file, directory,
request, response,
…

They are often referred to as Resources, but …
We may call them Externals.
What is an External?
The Engine interacts with Externals for the means of input and output.
How is an External interacted with?
Every system works differently, has different kind of constructs and therefore different interface(s).
We may call an abstraction over an interface of a system Protocol.
Where do Externals exist?
Externals exist in their system. They may be hierarchically structured within their system.
Relevant Externals are mostly local - grouped together, such as in the application directory in the file system, or a superior endpoint of an http(s) server.
Related Externals may also be local, such as Assets, Scripts, …; Models, Scenes, …
Requirements
The representation must allow definition of:

different Protocols,
hierarchies,
relative Locations,
in-External Locations

It must also allow trivial transformations to established representations, such as file paths, URLs, …
Proposal
This is the first of hopefully four indepently applicable proposals. They aim to split Externals and Assets, while trying to improve the Terminology, Structure and/or API for and between them. They should be applicable for both Engine Runtime and Suite.
Some terminology and functionality is borrowed from the URL standard.
How is an External located?
An External is located by a Locator and its components scheme and path.
What is a Locator?
A Locator describes a Location and how to access it.
Locator Components
Scheme
Identifies the Protocol.

Path
Location of the External. Every Locator detail other than scheme and fragment belongs to path.
Representations of path are scheme-specific.

For the file scheme this would be just: path
For the http(s) scheme this would be: domain/ip:port + path
…
Further distinction within path  must be done by other in-Engine libraries if necessary.

How is part of an External located?
A part of an External is located by the Location of an External and a fragment.
Fragment
Locates part of an External. We may call parts of an External Fragments from now on.
Not every External has Fragments.
If no fragment was defined the Locator locates an External, a Fragment otherwise.
Note: A file is not a Fragment of a directory. Both file and directory are Externals. Distinction may not be clear.

What is an Asset?
An Asset is a deserialized External or Fragment.
Representation
A Locator is represented by
scheme :// path # fragment
Examples
file:///path/to/app/path/to/file.ext#fragment
└─┬┘    └────────────┬─────────────┘ └──┬───┘
  │                  │                  │
scheme              path             fragment

http://192.178.1:8080/path/to/file.ext#fragment
└─┬┘   └──────────────┬──────────────┘ └──┬───┘
  │                   │                   │
scheme               path              fragment

         path
          │
          │
  asset:///#assetid
  └─┬─┘     └──┬──┘
    │          │
scheme      fragment

Relative Locations
A Locator can represent a relative Location. This is scheme-specific.
A Locator does not know whether it is absolute or relative. This is scheme-specific.
Wrongfully Joining an absolute Locator to a relative Locator without fragment cannot be caught as an error by Locator.
Locations can only be split into multiple Locators at instances of :// or /, scheme must always be suffixed by :// and fragment always be prefixed by #.
Locators defining a scheme can be relative to another Locator with the same scheme - not only absolute Locators can define a scheme.
Examples
file:///path/to/app

file://path/to/file.ext

http://path/to/file.ext

file://

path

file.ext

#fragment

Joining Relative Locators
Relative Locators must have either the same scheme or one or both have none. Locators with a fragment each cannot be joined. Minor Normalization might be applied after Joining.

URLs Problem
For unknowing developers representations such as:
file://path/to/file.ext, or path/to/file.ext
might describe a reasonable Location. But adhering to the URL specification means that "path" is the host and "/to/file.ext" is the path.

Correct would be:
file:///path/to/file.ext, and /path/to/file.ext

So whats different? path must be prefixed with / to indicate the end of host.
Most implementations know the file scheme specifies no host and will treat both representations equally. For the http(s) scheme both representations cannot be treated equally.
So why is this not a problem within Locator?
Locator delegates distinctions within path. Locator's path must therefore not be prefixed with /, but can be.
Absolute paths must still adhere to their specifications and schemes where there is an expected part before the first / for it's path are not freed from this problem. But relative paths can freely start with or without /.
Therefore, joining a Locator with relative Locators from either path/to/file.ext or /path/to/file.ext result in equal joined Locators by minor Normalization.
Since game developers will mostly always use relative Locators this problem is likely hidden from them.

Normalization
Locator may feature minor Normalization by replacing contiguous sequences of /s in path with just one /. If / is the last character of path, truncate it by one character.
Further Normalization is scheme-specific.
Normalization may also be delegated completely.

Location Local
In-Engine systems, such as the External or Asset system, may define a Location Local. All relative Locations are then assumed to be relative to the Location Local within the system.

Instructor
Locator may feature URLs Query operator ? or something similar to support for example custom asset pipelines.
Since its applications are generic usage must then be specified by those systems.

Extension of #2622

Locator reminds me of https://github.com/multiformats/multiaddr, used in libp2p: https://docs.rs/libp2p/0.39.1/libp2p/index.html

authors: LegNeato VVishion


text:
Document underlying algorithms and data structures

I'm finding that I still don't understand how entities, components, or bundles work. For example I just discovered that you can write this query without having to do anything special: Query<Entity, With<SomeComponent>>. The problem is that I have no idea why it works or how I could know that it should work without needing to see it in some random examples.
It'd be amazing if there were docs that explained the following:

An explanation of how entities, components, and bundles interact with each at the data structure level. That is, walk through an example of adding and then removing some entities, showing what the memory layout looks like (I think Bevy has two, so show both). Also, what's an archetype? IIRC, that has to do with how the entities are stored, so show what happens when some component changes archetypes (again, with some ascii/visual representation of the memory).
Explain how queries work. I'd love to know how the compile-time stuff works and see an example of how it traverses memory to find stuff.
Explain the algorithm that decides whether or not systems can run in parallel, i.e. if I add this param what'll happen to the system ordering.
Other technical details that would be valuable to know

Giving devs an approachable, yet highly technical explanation to Bevy's fundamentals would make a huge difference in understanding what should be possible and having an intuition for what APIs should be available and where they would be.
If more convincing is needed, there are more reasons to do this:

Make contributing to Bevy itself more approachable. If you know how the system works, then it's much easier to find what you're looking for.
Attract talent/publicity: a good article would probably get featured on HN and generate more interest in Bevy.

Yep! This is all planned as part of the new book! It's tracked over in https://github.com/bevyengine/bevy-website/issues/265.
This is an excellent list of topics to make sure we cover though; thank you <3

Woohoo, that's awesome!

authors: SUPERCILEX alice-i-cecile


text:
Mention getting mesa to enable Vulkan for more useful WSL setup

          I'd probably mention something about getting an up to date version of mesa (eg. through the kisak ppa for ubuntu) to run bevy on vulkan instead of gl (since bevy's GL targets GLES 3.0/webgl2 which is extremely limiting).

Originally posted by @Elabajaba in https://github.com/bevyengine/bevy/issues/9842#issuecomment-1726514866

Just wanted to mention that I have experimented with this before and it was previously discussed here https://github.com/bevyengine/bevy/pull/5040#issuecomment-1494706996
Also, #8383 mentions this discussion in the updated WSL documentation.

authors: alice-i-cecile benny-n


text:
Add a process for working groups

Objective
Coordinating work can be hard, and figuring out how to get started with contributions is always a challenge.
We've had great success with informal working groups in the past (primitives, bevy_color, stageless). However, they're not at all discoverable, are hard to keep track of and tend to flood the dev channels that they're in.
When their messages are moved to Discord threads, they then get completely scattered and buried.
Solution
We can formalize the working groups in a very process-light way, and give them a discoverable home by using a curated forum channel on Discord.
While we'll still need more stringent PR reviews for particularly complex or architectural changes made as part of these initiatives, a broad sign off on the course of action goes a long way to building consensus. By baking that into the process, I think we can avoid a lot of wasted work and relitigation without encouraging mega-PRs or RFCs.

This adds clarity and organization to a process that has been happening informally for ages. I think the way it's drawn up here is great. We also might want to make up a design-doc template at some point.

@cart I've added a section for the initial check as you requested. I think it's a reasonable idea, as long as we can keep the process light and turnaround fast.
When you're happy with this, feel free to merge.

@cart I've added a section for the initial check as you requested. I think it's a reasonable idea, as long as we can keep the process light and turnaround fast.
When you're happy with this, feel free to merge.

Awesome thanks! I'm happy with it. Lets give it a day or so to receive a few more eyes and then I'll merge if nothing else comes up.

I'm quite happy with this, and I think that if it gains traction it could be a huge boon for the ecosystem. I especially like that the document focuses on this as a means of onboarding new contributors, which I regard as quite important.

I think this would work really well even for things with a single code contributor if they are large enough - having a cohesive place for something like the #11426 PR would likely have helped keep track of things more easily.

Thank you to everyone involved with the authoring or reviewing of this PR! This work is relatively important and needs release notes! Head over to https://github.com/bevyengine/bevy-website/issues/1309 if you'd like to help out.

authors: NthTensor alice-i-cecile cart lee-orr mweatherley


text:
Allow Bounded3d implementations for custom primitives

Objective

Due to coherency, it was previously not possible to implement Bounded3d for Extrusion<MyCustomPrimitive>. This PR fixes that.

Solution

Added a new trait BoundedExtrusion: Primitive2d + Bounded2d which provides functions for bounding boxes and spheres of extrusions of 2D primitives.
Changed all implementations of Bounded3d for Extrusion<T> to BoundedExtrusion for T
Implemented Bounded3d for Extrusion<T: BoundedExtrusion>
Removed the extrusion_bounding_box and extrusion_bounding_sphere functions and used them as default implementations in BoundedExtrusion

Testing

This PR does not change any implementations

So, just to clarify, the problem before was that the default implementation of Bounded3d for Extrusion<WhateverShape> would block any specialized implementation of that trait? And the intended usage now is to access the default implementation by just writing impl BoundedExtrusion for MyType {} with no data? (unless, of course, I actually want to override those implementations)

So, just to clarify, the problem before was that the default implementation of Bounded3d for Extrusion<WhateverShape> would block any specialized implementation of that trait? And the intended usage now is to access the default implementation by just writing impl BoundedExtrusion for WhateverShape {} with no data? (unless, of course, I actually want to override those implementations)

Pretty much. Outside of bevy_math, it was not possible to impl Bounded3d for Extrusion<CustomPrimitive>. There could also not be a default implementation, since that would interfer with more specialized implementations for specific primitives.

authors: lynn-lumen mweatherley


text:
Actions emitted after onErrorReturn

Resolves #25

Codecov Report

Merging #26 into rxjava2 will not change coverage by %.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##             rxjava2      #26   +/-   ##
==========================================
  Coverage      94.19%   94.19%
  Complexity        14       14
==========================================
  Files              5        5
  Lines            310      310
  Branches          43       43
==========================================
  Hits             292      292
  Misses             4        4
  Partials          14       14

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 9674f88...b0b4c55. Read the comment docs.

repo: beworker/knot


text:
How do we make it work with Laravel Vapor?

Vapor is make Laravel go serverless; and I'm wondering how do we go about having laravel-websockets work in the serverless environment; especially Vapor.
Do we need to spin up a new server just for websockets? Or is there a better way?

I don't see any way that it would work out of the box with Vapor/AWS Lambda. With that model, each incoming request spins up a new instance of Laravel from the deployed code. I'm pretty sure you'll just need to run your websockets server in EC2 or ECS. If you go the ECS route you can probably scale up based on active connections once https://github.com/beyondcode/laravel-websockets/pull/140 is merged, pointing your websocket instances/ECS containers/broadcasting to the managed Redis instance (does Vapor set up ElastiCache Redis? Not sure if that's known yet)

How about setting up a pusher like service using this package and just pointing to it?

I'm not sure what you mean by "pusher like service", laravel-websockets is actually an implementation of the Pusher API.
I'll just say, if you're running Vapor, it likely means you can afford paying for service costs, so you could just pay for Pusher instead of using this lib.

I'll just say, if you're running Vapor, it would likely mean that you can afford paying for service costs, so you could just pay for Pusher instead of using this lib.

Not really. Pusher's pricing is way out of reach. My app has ~5K - 10K concurrent users and that'd mean I'll have to shell out several hundred dollars. This package solves that problem for me and I think most of the developers who need to have sockets in their app.
I believe that serverless would cost less when the web app has spikes of traffic every week. I currently run basic AWS infra but scaling is an issue when traffic goes up. I'd rather have it on 'serverless' provided I can run everything with it.
Of course, the solution is to spin up a new server in our AWS infrastructure and use it exclusively for AWS.
I'm however wondering if there's any way this package can be tweaked to run with Vapor.

Fair point regarding pricing.
But like I said above, no, this package can't run directly on AWS Lambda (which is what Vapor uses), because it's a long-running process. Like I said, I recommend ECS to run containerized instances of websockets, using load-balancing to proxy to any of the instances, using my fork in (i.e. code in #140) to scale horizontally, using Redis as a storage backend.

I did read your post; but it's going to take me a while to understand what problem is solves. I'm still pretty new to WS; learning things as I use it.

Currently (with the code in the master branch), you can only run a single instance of laravel-websockets. This means that you're entirely limited by network/hardware limits of a single machine, like IO, connection, and file handle limits.
My PR aims to make it possible to run multiple instances of laravel-websockets side-by-side such that you can get around those limits by running more instances each on their own server. This is called horizontal scaling (whereas vertical scaling would be just upgrading the server to higher CPU, RAM, etc, but still only running a single server).

This could solve the problem: https://aws.amazon.com/blogs/compute/announcing-websocket-apis-in-amazon-api-gateway/

Seems like anyone who is budget-minded should steer clear of serverless in most cases. And this package runs best on a dedicated server, even in a serverless architecture not everything needs to be serverless, or should be

@vesper8 - Im not sure that is strictly true. The actual Lambda part of is extremely cheap. Your RDS, Vapor, NAT gateway (for private DB) are the bits that add up. The minimum for all of that would be around $100/month. Not a $5 droplet for sure and maybe out of reach for a hobby, but for anything commercial this should not be a barrier.
Back to the issue of web-sockets. Did anyone get any further with this? Can someone explain why this would not work on serverless while pusher does. (has anyone actually tested pusher?)

@booni3 Pusher is a third party service/server that you connect to while laravel websockets is your own server that you have to run, aws lambda has a 15 minute max execution time so its not feasible.
I have used pusher in production and it works fine but its expensive.

From my understanding, it is "possible" isn't it? https://serverless.com/blog/api-gateway-websockets-support/

That doesn't imply that laravel-websockets would work with Lambda. All that does is have AWS keep the connection alive, and incoming messages are run as a lambda function, and outgoing messages are to be triggered by an HTTP request to AWS with the connection ID in the payload. Completely incompatible with this project.

Has anyone found this to work on Vapor? I'm interested in switching to it from Pusher, but need to know it works on Vapor and what if any configuration needs doing....

This is from a laravel serverless group I am part of:
Here is a quick list to make laravel-websockets work with Vapor through the Pusher SDK:
EC2 Instance/ DO Droplet

Setup Server: Nginx, PHP
Setup Security: Firewall + allow Port 6001
Setup SSL Certificate (Certbot) for domain
Require Laravel, laravel-websockets, pusher-js + Echo
Configure Nginx based on SSL Documentation (proxy server)
Customize .env file to match Pusher Credentials of Vapor + add SSL Certificates paths
(I additionally had to set verify_peer => false, in websockets.php config for it to work on Chrome)

On vapor side:

.env (same pusher credentials/secrets as EC2/DO)
broadcasting.php: Point Host to EC2/DO domain, Port to 6001
bootstrap.js: Point Echo to wsHost: EC2/DO domain
Then test a connection by running artisan websockets:serve in your application directory (EC2/ DO -> (var/www/html)), and if it works setup Supervisor to run this process for you as user=root.
If there are any security issues, or better ways, please alert.

Great write up, might give it shot. Pusher could become quite expensive as people have pointed out and I would like everything under one roof so to speak.

For anyone wondering, I am creating a package to use Laravel Echo with API Gateway Websockets as a driver.
You currently have to deploy it using Bref, but I am working on support for Vapor too. First release in days.
https://github.com/georgeboot/laravel-echo-api-gateway

For anyone wondering, I am creating a package to use Laravel Echo with API Gateway Websockets as a driver.
You currently have to deploy it using Bref, but I am working on support for Vapor too. First release in days.
https://github.com/georgeboot/laravel-echo-api-gateway

@georgeboot any updates on this? Tried it and it doesn't seem to be working now.

I don't really have to time to maintain it anymore.
My recommendation is to use Soketi serverless instead: https://renoki-25232877.hubspotpagebuilder.eu/soketi-serverless
Basically free to use and very well build.

authors: Humni TheBigK andrejguran bernisnukic booni3 francislavoie georgeboot lstables tntsoft vesper8

repo: beyondcode/laravel-websockets


text:
[console] added some space (on se marre bien)

:*

tu te venges pour mon commit dans ta poubelle ?

authors: bezout charlybigoud

repo: bezout/LMA


text:
Cannot enable/start docker service when using systemd on debian

The cookbook breaks when trying to configuring systemd service unit when running systemctl enable docker is missing .service

Hi @gosuri it looks like the fixes/improvements made it into 0.37.0 of the cookbook (releasing right after I send this) -- please check it out and let us know if you have any further issues. Thanks!

authors: bflad gosuri

repo: bflad/chef-docker


text:
Add mount position to telemetry

Whenever the mount's current position is known this information should be reported in telemetry.

Actually the mount position was already present as telemetry for the blind error source. I created a graph for it in the Grafana dashboard and committed this in 4b754d2bc0518b9e777e4b355f4af65370fac134.

repo: bgottula/track


text:
URI requirements

We should fix requirements for the URIs:

stable, i.e. never go away (doi?)
versioned: zenodo / git (not stable)

The idea we had is that the URL might change, but the checksum does not so we can map back to new URLs very easily. Does that make sense?

Versions really do not exist here, its a registry, you just register a new dataset. We really try to keep it as simple as possible.

authors: bernt-matthias bgruening

repo: bgruening/test-data-registry


text:
Added kubectl config's current context

I created this little addition locally and thought someone else might enjoy this. It's the current context of your kubectl config. Whatever your current is set to it will show in the prompt with the Unicode Helm symbol.
Let me know if I need to add anything else or change the function!

Hey @zikes let me know if you see anything you think should change. Thanks!

@jtaylor32 Awesome! I made some tweaks and added tests, but Github won't let me PR them to your fork. I did a bunch of Googling and I think this will work:
To have a look at them you can git remote add zikes https://github.com/zikes/powerlevel9k.git and git checkout zikes/kubernetes-context.  If you want to add them to this PR you can merge mine in with git checkout origin/kubernetes-context and git merge zikes/kubernetes-context, then push to origin and they'll be included in this PR.

@zikes that wasn't working for me. Would it be difficult to clone my repository and add them to the kubernetes-context branch? If that's too tough I might be able to do some funky git stuff. Let me know.

I cloned yours, but Github doesn't list you as a fork when I try to PR. I missed a step in my comment: git pull zikes kubernetes-context, then you can checkout/merge it.

Yeah 😆 exactly. We did the same thing weird you can't branch and PR someone's fork like that.

It looks like I forgot to add the new test file to the travis config. Can you add it in .travis.yaml?

Yeah I can do that. I won't be able to get it in today, but I can get it up tomorrow.

Nice teamwork, @jtaylor32 & @zikes! I'm excited to get this merged once it's ready =)

Just pushed the test changes up should be good to go now @bhilburn! Thanks for all the help @zikes -- it was pretty much all you anyways! :)

@jtaylor32 - Thanks for the great work, here, and thanks for providing testing and feedback, @zikes! Great work.
I added this to the README and CHANGELOG and merged it into next. Great PR =)

authors: bhilburn jtaylor32 zikes


text:
Set up your Kanban board

Project Link
Click Here
#Number of People Working in the team

Two

Hi @bhskr44 and @Alabi12,
While you made a great effort in this project, unfortunately, I cannot proceed to review your code.
Invalid Code Review Request
You should provide the link to the kanban board, not your repository
Your Code Review Request will be marked as invalid in your Dashboard, so please submit a new one once you are ready 🙏
Cheers and Happy coding!👏👏👏
Feel free to leave any questions or comments in the PR thread if something is not 100% clear.
Please, do not open a new Pull Request for re-reviews. You should use the same Pull Request submitted for the first review, either valid or invalid unless it is requested otherwise.

Invalid Code Review Request does not count into the code reviews limit.

Status: Required Changes ♻♻♻
Hi Team,
Good job so far!
There are some issues that you still need to work on to go to the next project but you are almost there!
Highlights
✅ You used the template given 👍
Required Changes ♻
Check the comments under the review.

[ ] It's required that for a group of 2 students for this project, you should remove the tasks for group C and have only 15 tasks remaining in the project. Currently, you shared the tasks meant for the group-C student but it's required you have only 15 tasks remaining and the ones for group C should be removed. Basically, you are not to do those tasks, except if you guys have the time and can do that but for the Kanban board, kindly remove them 👍
[ ] Also, please add two assignees for tasks that are marked as group tasks. 👍

Optional suggestions
Every comment with the [OPTIONAL] prefix is not crucial enough to stop the approval of this PR. However, I strongly recommend you take them into account as they can make your code better.
Cheers and Happy coding!👏👏👏
Feel free to leave any questions or comments in the PR thread if something is not 100% clear.
Please, remember to tag me in your question so I can receive the notification.
Please, do not open a new Pull Request for re-reviews. You should use the same Pull Request submitted for the first review, either valid or invalid unless it is requested otherwise.

As described in the Code reviews limits policy you have a limited number of reviews per project (check the exact number in your Dashboard). If you think that the code review was not fair, you can request a second opinion using this form.

Hi team,
STATUS: APPROVED ✔ ✔
Your project is complete!  There is nothing else to say other than... it's time to merge it :shipit:
Congratulations and well done and all the best with your project! 🎉

Highlights

All cards have been assigned properly 👍 👍
Kanban board is setup correctly 👏

Optional suggestions
Every comment with the [OPTIONAL] prefix won't stop the approval of this PR. However, I strongly recommend you to take them into account as they can make your code better. Some of them were simply missed by the previous reviewer and addressing them will really improve your application.
Cheers and Happy coding!👏👏👏
Feel free to leave any questions or comments in the PR thread if something is not 100% clear.
Please, remember to tag me in your question so I can receive the notification.

As described in the Code reviews limits policy  you have a limited number of reviews per project (check the exact number in your Dashboard). If you think that the code review was not fair, you can request a second opinion using this form.


text:
Provide a transaction/fulfillment/condition validation utility

To support cases similar to:
>>> # Create another transfer transaction with the same input
>>> tx_transfer2 = b.create_transaction(testuser1_pub, testuser2_pub, tx_retrieved_id, 'TRANSFER')
>>>
>>> # Sign the transaction
>>> tx_transfer_signed2 = b.sign_transaction(tx_transfer2, testuser1_priv)
>>>
>>> # Check if the transaction is valid
>>> b.validate_transaction(tx_transfer_signed2)
DoubleSpend: input `{'cid': 0, 'txid': '933cd83a419d2735822a2154c84176a2f419cbd449a74b94e592ab807af23861'}` was already spent

see https://github.com/bigchaindb/bigchaindb/blob/master/docs/source/drivers-clients/python-server-api-examples.md#double-spends

Here we go... Hand crafted Hash-Locked ...
`# import sha3
import hashlib
import json
import time
from bigchaindb_driver import BigchainDB
import cryptoconditions as cc
from cryptoconditions.crypto import Ed25519SigningKey as SigningKey
Create Transaction
class CreateTxnManager():
def __init__(self, params):
    self.bigchaindb_url = 'http://172.16.217.94:9984'
    self.b = self.getChainDriver()
    self.condition = ''
    self.owner_pub_key = params.get('owner_public_key')
    self.owner_priv_key = params.get('owner_private_key')
    self.requester_pub_key = params.get('requester_publickey')

def getChainDriver(self):
    return BigchainDB(self.bigchaindb_url)

def txInput(self):
    input_ = {
        'fulfillment': None,
        'fulfills': None,
        'owners_before': (self.owner_pub_key,)
    }
    return input_

def txOutput(self):
    secret = str.encode(self.secret_message)
    tx_condition = cc.PreimageSha256Fulfillment(preimage=secret)
    self.condition = tx_condition
    output = {
        'amount': 1,
        'condition': {
            'details': tx_condition.to_dict(),
            'uri': tx_condition.condition_uri,
        },
        'public_keys': (self.owner_pub_key,),
    }
    return output

def tx_prepare(self, assets):
    return {
        'operation': 'CREATE',
        'asset': {
            'data': assets
        },
        'metadata': None,
        'outputs': (self.txOutput(),),
        'inputs': (self.txInput(),),
        'version': '0.9',
    }

def createAsset(self, params, assets):
    key = str(time.time())
    self.secret_message = hashlib.sha3_256(key.encode()).hexdigest()
    return self.deployAsset(assets)

def deployAsset(self, assets):
    tx = self.tx_prepare(assets)
    json_str_tx = json.dumps(
        tx,
        sort_keys=True,
        separators=(',', ':'),
        ensure_ascii=False,
    )
    creation_txid = hashlib.sha3_256(json_str_tx.encode()).hexdigest()
    tx['id'] = creation_txid
    fl_str_tx = json.dumps(
        tx,
        sort_keys=True,
        separators=(',', ':'),
        ensure_ascii=False,
    )
    tx['inputs'][0]['fulfillment'] = self.condition.serialize_uri()
    returned_creation_tx = self.b.transactions.send(tx)

    if self.validateTx(tx['id']) == 'valid':
        return {'status':'True', "token": self.secret_message, "create_txn_id": tx['id'] }
    else:
        return {'status':'False'}

def validateTx(self, txid):
    trails = 0
    while trails < 100:
        try:
            if self.b.transactions.status(txid).get('status') == 'valid':
                break
        except bigchaindb_driver.exceptions.NotFoundError:
            trails += 1
    return self.b.transactions.status(txid).get('status')

Transfer txn
class TranferTxManager():
# token : secret_token
def __init__(self, token):
    self.bigchaindb_url = 'http://172.16.217.94:9984'
    # self.mongoCon = DataManager().makeConnection()
    self.b = self.getChainDriver()
    # self.txnTbl = "transactions"
    self.preimage = token

def getChainDriver(self):
    return BigchainDB(self.bigchaindb_url)

def getTxnDetails(self):
    db = self.mongoCon
    data = db[self.txnTbl].find_one({'_id': self.preimage})
    return data

def terminateTxn(self):
    db = self.mongoCon
    sts = db[self.txnTbl].update_one({'_id': self.preimage }, {'$set': {"txn.visibility_count": 0}})
    return sts;

def validateTx(self, txid):
    trails = 0
    while trails < 100:
        try:
            if self.b.transactions.status(txid).get('status') == 'valid':
                break
        except bigchaindb_driver.exceptions.NotFoundError:
            trails += 1
    return self.b.transactions.status(txid).get('status')
"""
data = {
    'txnId': <Create TXN ID>,
    'pubkey': "<requester pub key>"
}
"""
def trasferAsset(self, data):
    data = self.getTxnDetails()
    if data and data.get('txId'):
        if self.validateTx(data.get('txId')) == 'valid':
            return self.prepareAssetTransfer(data)
        else:
            return {"status":"False", "error": "invalid create transaction"}
    return {"status":"False", "error": "invalid attempt"}

def transferInput(self, tx):
    index = 0
    output = tx['outputs'][index]
    input_ = {
      'fulfillment': output['condition']['details'],
      'fulfills': {
          'output': index,
          'txid': tx['id'],
      },
      'owners_before': output['public_keys'],
    }
    return input_

def prepareAssetTransfer(self, data):
    txnid = data.get('txId')
    tx = self.b.transactions.retrieve(txnid)
    transferAsset = {
      'id': tx['id']
    }
    transferTx = self.b.transactions.prepare(
      operation='TRANSFER',
      recipients=data.get('pubkey'),
      asset=transferAsset,
      inputs=self.transferInput(tx),
    )
    transfer_tx_condition = cc.PreimageSha256Fulfillment(preimage=str.encode(self.preimage))
    if tx['inputs'][0]['fulfillment'] == transfer_tx_condition.serialize_uri():
        transferTx['inputs'][0]['fulfillment'] = transfer_tx_condition.serialize_uri()
        sent_transfer_tx = self.b.transactions.send(transferTx)
        return {"status":"True", "asset":tx['asset']['data']}
    else:
        return {"status":"False", "error": "invalid transaction id"}

`

Hi @arunkumarsekar! Sorry for not getting back to you earlier. Thanks for sharing your solution! We will look into how we can integrate it soon.

What happened with this? The Docs lead here in a Todo box.
Is the above solution functional at present?

authors: StatelessToken arunkumarsekar sbellem

repo: bigchaindb/bigchaindb-driver


text:
[ADAM-1889] Run R/Python tests.

Resolves #1889.
Let's see if this does it...

Closing in favor of https://github.com/bigdatagenomics/adam/pull/1892

repo: bigdatagenomics/adam


text:
Can't craft items (or can't see recipes in JEI)

The title says it all. I can't craft any of the items from the mods (or can't see the recipes in JEI, which I assume means the craft don't work). Let me know if I'm in the wrong.

what version of the mod/minecraft are you using?

fixed in 1.1.1

authors: bigenergy poziel

repo: bigenergy/lampicus


text:
Text representation of a JSON object

For example,
let json = ["key" : 1].toJSON()

Can I somehow convert json to something like this
{
  "key" : 1
}

to store in a text file?

You can do something like this:
do {
    let json = ["key": 1].toJSON()
    let jsonString = try json.serializeString()
    jsonString.writeToURL(url, atomically: true, encoding: NSUTF8StringEncoding)
} catch {
    // handle error
}

Sorry, but I can't find serializeString(). (I'm on swift3 branch)

Ah. Sorry about that confusion. It's on master at the moment. We'll be merging swift3 with master and tagging another release. Today, hopefully.

authors: mdmathias okla

repo: bignerdranch/Freddy


text:
Add new item

Hello all how I am suppose to add new items with that library can anyone give me any hint because notifydatasetchanged is not working as I can see ?

Here's an example of doing so in the sample:
https://github.com/bignerdranch/expandable-recycler-view/blob/master/sampleapp/src/main/java/com/ryanbrooks/expandablerecyclerviewsample/linear/horizontal/HorizontalLinearRecyclerViewSampleActivity.java#L193
What you'll need to do is add the item to the List that you passed in to the adapter, then notify the adapter of the change with one of the specific parent/children notify methods that we have available.

@paul-turner  Hi Paul,
I was trying that but one problem appeared each time I type adapter.notifyParentItemInserted(data.size() - 1); even when adapter change hasn't changed a new parent item appear at the bottom of the list.
All I do is:
loadHeaderData(); -> this will add two elements to the list
adapter.notifyParentItemInserted(data.size() - 1); will update the data passed in

if loadHeaderData() is adding two items then you probably want to say:
adapter.notifyParentItemRangeInserted(data.size() - 2, 2);

In order to have the adapter update for both (or you can call the single version twice with each index).
Not sure about the issue of calling notifyParentItemInserted always adding a parent item at the bottom even if the adapter hasn't changed. Probably should call the notify method if nothing is changed, the behaviour around that is undefined right now (might result in crashes, might add a duplicate item).

repo: bignerdranch/expandable-recycler-view


text:
🛑 Jefferson Real is down

In a19c6e3, Jefferson Real (https://jeffersonreal.uk) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Jefferson Real is back up in be95d8d.

repo: bigupjeff/my-site-uptime-monitor


text:
🛑 Jefferson Real is down

In 0d25ca5, Jefferson Real (https://jeffersonreal.uk) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Jefferson Real is back up in 8b32a7c.


text:
🛑 Jefferson Real is down

In 125c2f4, Jefferson Real (https://jeffersonreal.uk) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Jefferson Real is back up in e595166.


text:
Usefulness of content-type in secrets

Currently, the secrets have a content-type field that I don't really see what it is useful for. especially that it is specific to the dbus implementation, making the generic API not cover it.
If you look for it usages inside oo7, you will find various text/plain and some probably mistakes of text/utf8 (proves that we don't really make use of it).
gnome-keyring also doesn't make use of it and always sets it to text/plain, see https://gitlab.gnome.org/GNOME/gnome-keyring/-/blob/master/daemon/dbus/gkd-secret-secret.c
kwallet on the other hand, seems to only care if it is a text or a binary blob at https://github.com/KDE/kwallet/blob/28a47505b5ecfa9269fa34e8ede5ea63c041f374/src/runtime/kwalletd/kwalletfreedesktopcollection.cpp#L184
So I am considering removing that API completely and keep it an implementation detail. Replacing the usual API that takes secret: impl AsRef<[u8]>, content_type: &str with an enum like
pub enum Secret {
   Text(String),
   Blob(Vec<u8>)
}

Which will automatically set the correct content-type.
cc @ueno @A6GibKm

I would like to know if there are more well-known content types other than text/plain.

Even if an app would set one, the most popular server side implementation completely ignore them.
Having it as an enum means we can extend it in the future without making it error prone.


text:
server: Add SearchItems implementation

This change add Secret Service method SearchItems and Secret Collection method SearchItems implementation.

todo: https://github.com/bilelmoussaoui/oo7/pull/153#discussion_r1836598146

Looks good enough

authors: bilelmoussaoui warusadura


text:
explore automating the pool pump

See https://neon.subspace.de/2017/10/smarter-swimming-pool-1-pool-pump/ for inspiration

Too expensive, juice is not worth the squeeze.  Won't pursue.

repo: billimek/home-assistant-config


text:
Beyond bacteria text

Issuing this as a pull request. We need to get this merged so results can be delivered to participants.

:+1:

authors: adamrp wasade

repo: biocore/American-Gut


text:
artifact file extension?

What should the recommended file extension be for serialized artifacts?
@gregcaporaso @ebolyen and I were thinking of .qtf for QIIME Tar Format, since the format is a tar file. .qtf is only used by a couple of unrelated software packages and doesn't seem to be a popular extension.
The only thing I'm not sold on is having part of the underlying file format in the name (Tar) in case that changes in the future. It would also be nice to have "artifact" somewhere in the name since it is a format for serializing QIIME artifacts.

Some ideas:

.qink: QIIME Is Not Kiime.
qing: QIIME Is Not a Game.
qool: QIIME O..... O..... L..... (fill in the blanks?).
foq : Format Of QIIME.

Would it be possible to expand on the motivation to use a custom extension
as opposed to just .tar? I realize the nature of how things are packed in
the future might change, but on the other hand, reliance on standard
formats has an elegant simplicity to it
On Tue, Mar 8, 2016 at 9:45 AM, Yoshiki Vázquez Baeza <
notifications@github.com> wrote:

Some ideas:

.qink: QIIME Is Not Kiime.
qing: QIIME Is Not a Game.
qool: QIIME O..... O..... L..... (fill in the blanks?).
foq : Format Of QIIME.

—
Reply to this email directly or view it on GitHub
https://github.com/biocore/qiime2/issues/6#issuecomment-193885862.

@wasade You bring up a good point. I think he motivation is to make these files generally opaque, but you can untar them if desired. It also makes finding artifacts easier as they have a particular extension. These aren't just any old tar files, they have a very specific meta-format to them that QIIME2 understands.
With respect to @jairideout's concern, I think if we changed from tar to zip, we would call those files something like qzf which would further distinguish them from any existing qtf files. It isn't much different from .doc vs .docx.

@ElDeveloper :-1: on .qink I would not be comfortable saying that out loud...

Okay, thanks, makes sense
On Tue, Mar 8, 2016 at 10:12 AM, Evan Bolyen notifications@github.com
wrote:

@ElDeveloper https://github.com/ElDeveloper [image: :-1:] on .qink I
would not be comfortable saying that out loud...
—
Reply to this email directly or view it on GitHub
https://github.com/biocore/qiime2/issues/6#issuecomment-193896937.

I like the idea of qzf (zip) or qtf (tar).

Sounds like we're in agreement on qzf and qtf. Thanks!

authors: ElDeveloper antgonza ebolyen gregcaporaso jairideout wasade


text:
Change CLI parameters in qiita maintenance sysmessage

Currently we are providing a --time parameter, in seconds, and the developer needs to compute how many seconds are needed for the deadline.
Ideally we want to provide the time in a standard format, for example: MM/DD/YYYY-HH:MM:SS and put that time as the deadline.

After using this feature since it's creation I think changing this to hours vs. seconds will make the most sense. I normally set it up for 1-2 hours or 1-2 days. Thus, hours should suffice.

authors: antgonza josenavas

repo: biocore/qiita


text:
bgzf output not compatible with htslib

if I bgzip a bed file with biogo, it's not usable from tabix. Here's a test that demonstrates the problem:
func TestHeader(t *testing.T) {
    buf := new(bytes.Buffer)
    gz := NewWriter(buf, 1)
    gz.Comment = "comment"
    gz.Extra = []byte("extra")

    _, err := gz.Write([]byte("payload"))
    if err != nil {
        t.Fatal("error writing bgzf")
    }
    if err := gz.Close(); err != nil {
        t.Fatal("error closing bgzf")
    }

    b := buf.Bytes()[:16]
    expected := []byte(MagicBlock[:16])
    if !bytes.Equal(b, expected) {
        t.Fatalf("bgzf: incorrect header.\n got    %v\n wanted %v", b, expected)
    }
}

The output is:
--- FAIL: TestHeader (0.00s)
	bgzf_test.go:87: bgzf: incorrect header.
		 got    [31 139 8 20 0 0 0 0 0 0 11 0 66 67 2 0]
		 wanted [31 139 8 4 0 0 0 0 0 255 6 0 66 67 2 0]
FAIL

This is the line failing htslib checks: https://github.com/samtools/htslib/blob/6d927dfa3192492f3015b1bc9a0026f585e93acc/bgzf.c#L1494

wrong repo

repo: biogo/biogo


text:
🐛 useImportType false positive when identifier shares a name with a TypeScript type

Environment information
CLI:
  Version:                      1.9.4
  Color support:                true

Platform:
  CPU Architecture:             aarch64
  OS:                           macos

Environment:
  BIOME_LOG_PATH:               unset
  BIOME_LOG_PREFIX_NAME:        unset
  BIOME_CONFIG_PATH:            unset
  NO_COLOR:                     unset
  TERM:                         "xterm-256color"
  JS_RUNTIME_VERSION:           "v22.11.0"
  JS_RUNTIME_NAME:              "node"
  NODE_PACKAGE_MANAGER:         "pnpm/9.7.1"

Biome Configuration:
  Status:                       Loaded successfully
  Formatter disabled:           false
  Linter disabled:              false
  Organize imports disabled:    true
  VCS disabled:                 false

Workspace:
  Open Documents:               0

What happened?
This one's easy to reproduce.
With useImportType* enabled, biome treats certain term-level identifiers (such as object) as types, even if the identifier is used as a value in that file.
Since the unsafe flag is opt-in, this has the potential to cause a runtime exception unless it's caught during review / by our CI/CD pipeline.
Config:
I believe useImportType is turned on by default, so any configuration that doesn't override it is enough to reproduce.
Repro:
/// ex-01.ts
export namespace object {
  export const keys = globalThis.Object.keys
}

This is what I wrote:
/// ex-02.ts
import { object } from "./ex_01.js"

console.log(object.keys(globalThis))

This is what biome changes it to:
/// ex-02.ts

//       vvvv
import { type object } from "./ex_01.js"

//            vv this now throws
console.log(object.keys(globalThis))

Expected result
It shouldn't add inline type keywords if the identifier is used as a term in that same file.
Code of Conduct

[X] I agree to follow Biome's Code of Conduct

I can't reproduce it in the playground, this means it's been fixed. Can you try to latest nightly to confirm?

authors: ahrjarrett ematipico

repo: biomejs/biome


text:
fix(website): avatar overlapping with header nav

Hello everyone,
Congrats on the fork and thank you for the library in the first place.
Summary
While surfing the blog posts I've come around this visual bug:

So I fixed it very quickly by changing avatars' z-indexes.
I think I could achieve the same result by bumping up header's z-index as well (or uniquely that), let me know if you'd prefer this way and I'll gladly change it.
Thank you!

Thank you!

authors: ematipico lutaok


text:
DB Based choice provider

There is a group that has reported the availability of a database based choice provider.
https://issues.jenkins-ci.org/browse/JENKINS-24274

The code is for extending the Extensible Choice Parameter plugin but it seems that this feature would also be a great addition to the uno-choice parameter types. What do you think? Would it be worth contacting the developer and see if they would like to contribute to uno-choice?

Commented in the issue - https://issues.jenkins-ci.org/browse/JENKINS-24274
Seems like there has been no reply of the plug-in maintainer, so we may have to try our best at a new implementation of a similar parameter type.

Comment added ;-)
I'll keep you posted as soon as the fork is available.

Yay, thanks for the quick response @tduchateau. Would you mind if we shamelessly copied your code to this plug-in too? :-) All credits will go to you.

Would you mind if we shamelessly copied your code to this plug-in too?

Of course! Also feel free to improve or even rewrite it! ;-)

Thanks @tduchateau ! We'll make sure to include the credits and, in case we find ways to improve it, we'll definitely ping you to see if there's some interest in re-using the code :-)

Hey!
PR submitted: https://github.com/jenkinsci/extensible-choice-parameter-plugin/pull/8 ;-)

Awesome @tduchateau ! And already includes French translation :-) Thanks a lot!!!
@imoutsatsos I'm not really sure how to integrate this PR in unochoice right now, without changing many parts of the code. Let's push it to 1.1 or maybe a 2.0 release?
I never read Extensible Choice Parameter Plug-in's code. If I had read it before, I'd probably copy their extension point for ChoiceListProvider... so instead of only supporting Scripts, we could support Scripts, Text Areas, or other custom choice list providers.
The easiest path, IMO, is release 1.0 as-is, and then create a new parameter type for DB connections. But it would have settings per job, and not global settings.
Thoughts?

Agree. This should be a post 1.0 feature. Settings per job is the way to go too. We can think about the implementation details. Thanks @kinow  and @tduchateau !

Moved to https://issues.jenkins-ci.org/browse/JENKINS-28736

authors: imoutsatsos kinow tduchateau

repo: biouno/uno-choice-plugin


text:
"samtools index" did not work

Hello, I tried the samtools playground, but seems samtools index did not work. Here is the message:
samtools index: failed to create or write index
Thanks.

Hi @pinbo, curious what's the full command you entered? And were you using the A549.bam demo file or did you specify a custom local file? Thanks!

Hi @pinbo, curious what's the full command you entered? And were you using the A549.bam demo file or did you specify a custom local file? Thanks!

I uploaded my own data (2.sorted.bam) and run samtools index /data/2.sorted.bam
I think I figured out: folder /data is not writable. I need to direct the output to the folder "/samtools/examples".
Thanks.

I uploaded my own data (2.sorted.bam) and run samtools index /data/2.sorted.bam
I think I figured out: folder /data is not writable. I need to direct the output to the folder "/samtools/examples".
Thanks.

authors: pinbo robertaboukhalil

repo: biowasm/biowasm


text:
🛑 Bangla Plex API is down

In 781096e, Bangla Plex API (https://banglaplexapi.bymirrorx.eu.org/popular/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Bangla Plex API is back up in 6cef54b after 13 minutes.


text:
🛑 Personal m3u is down

In 2f08f29, Personal m3u (https://personalm3u.onrender.com/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Personal m3u is back up in e22a07a after 1 hour, 4 minutes.


text:
Error on Make

I get a few errors when I call make:
Building CXX object CMakeFiles/riscv_vm.dir/riscv_vm/syscall.cpp.o syscall.cpp: In function ‘void syscall_write(riscv_t*)’:
syscall.cpp:97:29: error: ‘alloca’ was not declared in this scope    97 |   uint8_t *temp = (uint8_t*)alloca(count);
syscall.cpp:231:29: error: ‘alloca’ was not declared in this scope   231 |   uint8_t *temp = (uint8_t*)alloca(count);       |                             ^~~~~~ make[2]: *** [CMakeFiles/riscv_vm.dir/build.make:104: CMakeFiles/riscv_vm.dir/riscv_vm/syscall.cpp.o] Error 1 make[1]: *** [CMakeFiles/Makefile2:196: CMakeFiles/riscv_vm.dir/all] Error 2 make: *** [Makefile:91: all] Error 2

I got the same problem and I had loved it.
use
man alloca

you will know the alloca comes from  <alloca.h>
so juse add this code in syscall.cpp:
#include <cstdint>
#include <cstdio>
#include <ctime>

#include "../riscv_core/riscv.h"
#include "state.h"

#include <alloca.h>    // Add this line

enum {
 SYS_getcwd = 17,

then you will make successful.

authors: ALexei-Stukov mateidragony

repo: bit-hack/riscv-vm


text:
Generic TypeAliases Parameter are not correctly resolved when inherited

Description

See here fore more.
This can only fixed if the KSP issue is resolved.

Done with the Release of 0.2.0

Still an issue

repo: bitPogo/kmock


text:
Auto-update addon inside the editor

Similar to how https://github.com/nathanhoad/godot_dialogue_manager works, it is possible to download the latest addon version inside the editor.
Potentially, there could be a new button somewhere (in case there is an update available) prompting the user to download the new version.
See https://github.com/nathanhoad/godot_dialogue_manager/blob/08ee0579a6828386cdd6000edfb2871a96a7fd62/addons/dialogue_manager/components/download_update_panel.gd for an example implementation.

So should the button only appear when there is a new update availible?

@FonkinS yes!

authors: FonkinS bitbrain

repo: bitbrain/beehave


text:
auto-generated help

Hey, I made this website with auto-generated help from bitcoin core
https://bitcoin-rpc.github.io/ (go script here https://github.com/bitcoin-rpc/bitcoin-rpc.github.io/blob/master/script/bitcoin.go )
but I am thinking it would be better suited either here or on bitcoin.org website (probably here is better)
There is a RPC reference here, but it is a little different (and also outdated, since it is done by hand)
https://bitcoin.org/en/developer-reference#rpc-quick-reference
Do you think it would be a good idea?

I have made a PR, closing this issue
https://github.com/bitcoin-core/bitcoincore.org/pull/526


text:
Bitcoin Core GUI 0.21.1 stopped syncing after latest Mac OS update.

Bitcoin Core GUI 0.21.1 stopped syncing after latest Mac OS update. (Pruned node)

Actual behavior

2021-05-19T13:21:13Z connect() to 127.0.0.1:9050 failed after select(): Connection refused (61)

System information

Macbook Intel CPU Mac OS Big Sur 11.3.1

Apparently the Mac OS upgrade removed tor from my system. After installing tor the node is syncing again.

repo: bitcoin-core/gui


text:
Persist "mask values" to prevent shoulder surfing

Current Behavior: "Mask values" mode is off each launch and must be manually re-enabled.
If a wallet loads on startup from settings.json this leaves user vulnerable to shoulder surfing.
Solution: This mode should persist across restarts of bitcoin-qt by being saved in Bitcoin-Qt.conf.
Exactly how nDisplayUnit=0 will persist the unit to show amounts in.
Expected Behavior: If I shutdown Bitcoin core with it on, I'd expect it to be on when I restart and vice versa.
Moved from: https://github.com/bitcoin/bitcoin/issues/25826.

This has been worked on #701 and I've worked on a follow-up masking the transactions view on #708

Since #701 was merged, i believe this issue can be closed, right ?  @fanquake

authors: fanquake hernanmarino pablomartin4btc


text:
Incorporate Mempool and Chain events for ZMQ

Issue
Can we integrate more granular mempool and chain information via https://github.com/0xB10C/bitcoin-zmq-mempool-chain-events/blob/v23.0-zmce/PATCH.md
Example of the patch in action: https://github.com/bitcoin/bitcoin/pull/26451#issuecomment-1313934927

(but I don't know if you really want to keep updating these patches)
this boils back down to: Bitcoin Core's real-time interfaces are meh

Is this needed for Tabconf?

This is not needed for TabConf.

authors: 0xB10C josibake mplsgrant

repo: bitcoin-dev-project/warnet


text:
Implement BIP 118 validation (SIGHASH_ANYPREVOUT)

Forward port from #56

🐙 This pull request conflicts with the target branch and needs rebase.

authors: DrahtBot ajtowns

repo: bitcoin-inquisition/bitcoin


text:
Content Suggestion: Bitcoin MeWe Group

Link to Content: MeWe.com/join/bitcoin
Briefly Describe Content: A group on the MeWe social network all about Bitcoin news, education, and general discussions. NOT a place to discuss trading, and NOT a place to discuss 💩coins!
Suggested Section: Learning Resources > Websites

MeWe is a social media platform like Facebook, but without ads, algorithms, spying, or censorship. You're right, though: it is a centralized platform, so it makes sense to not have it on the site. Thanks for considering it!

repo: bitcoin-only/bitcoin-only


text:
TestWrapper instantiation/setup/shutdown checks

This PR:

reimplements TestWrapper as a singleton class so that only one object can be instantiated. Any attempts to instantiate a second TestWrapper will return the original test wrapper object.
adds a member variable running to ensure that setup() has no effect when the test is already running and shutdown() has no effect when the test is not running.

Together, these ensure that the user doesn't get into weird states where they have multiple test instances or they try to start tests when the test is already running.

Request review/test from @bitschmidty

repo: bitcoinops/taproot-workshop


text:
HyperDeck Shuttle HD

Est-il prévu une mise a jour pour le nouvel Blackmagic design hyperDeck Shuttle HD ?

Duplicate of #70

repo: bitfocus/companion-module-bmd-hyperdeck


text:
RossTalk

I'm new to Companion, but I seem to be having trouble to get the RossTalk key transitions to work. All the other commands for XPT and cut, auto trans, etc seam to work. But when i try to turn on and off a key for the Key transitions it doesn't do anything.
Is there an area where you can input custom commands?
Thanks

Seems to be tested OK

authors: Jonthancrandall haakonnessjoen

repo: bitfocus/companion-module-rosstalk


text:
Bug: Undefined audio output

Recently a undefined output has shown up in my output dropdown that is overlapped with label (CADefaultDeviceAggregate-54109-4). Upon choosing the option, the app craches. There have been other instances when
the app has crashed randomly when switching outputs, but not sure whether those are related to this issue.
Setup information:

macOS Version: 10.14.6
eqMac UI Version: 1.2.1
eqMac App Version: 0.3.2
eqMac Driver Version: 1.1.1

This should now be fixed. No update of eqMac required

Thank you!

authors: KasparRosin nodeful

repo: bitgapp/eqMac


text:
Multiple upstreams without subdomains

Hello,
I have oauth2_proxy working with one upstream, which is great. I was wondering if it's possible to use multiple upstreams like http://server.com/app1 and http://server.com/app2 instead of using subdomains like http://app1.server.com and http://app2.server.com? All the issues and help files are using subdomains. I'm using Azure AD as a provider.
My Nginx config file would be something like this:
       location /app1 {
        proxy_pass http://127.0.0.1:4180;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Scheme $scheme;
        proxy_connect_timeout 1;
        proxy_send_timeout 30;
        proxy_read_timeout 30;
        }

        location /app2 {
        proxy_pass http://127.0.0.1:4180;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Scheme $scheme;
        proxy_connect_timeout 1;
        proxy_send_timeout 30;
        proxy_read_timeout 30;
        }

But as far as I know, I'm unable to redirect those locations to different hosts or ports in the oauth2_proxy config file, right?
Thank you.

Why not run two instances of oauth2_proxy listening on different ports, with different settings?

@r3m0t because then you will usually have to register n-applications  with the provider because of the hard-coded callback domains (think of github).

The way to do this is to have the requests hit oauth2_proxy first, then be proxied to nginx, then from there nginx can proxy to any other applications with any transformation you need. Or, you can use nginx auth_request method.

authors: jvravensberg ploxiln r3m0t rmoriz


text:
EKS: Prompt for MFA token if required

Enable SDK option to prompt for MFA token refresh if required
(on stdin)
Remove hard-coded 30s request timeout, and use inherited context
instead

bors r+

bors r+

authors: anguslees falfaro

repo: bitnami/kube-prod-runtime


text:
Verschlüsseltes Passwort/Password recovery

Ich möchte einem Freund von der wallet aus Bitcoins senden und werde nach einem verschlüsselten Passwort gefragt, dass ich nie eingerichtet habe. Was kann ich tun?
Android Version 5.2.2

Do you have the 12 words backup?

@Silvia72
we have developed our own hardware for cracking BITCOIN wallet PASSWORDS with superfast speed
and if you still has problem I can help you run it. you can find my contact details on my profile
or you can send me message in telegram: @johnjames333

@Silvia72
If you have recovery phrase you can restore your wallet and set new password. i f you don't have recovery phrase I can crack your password. send me email I can solve your problem : anywalletrecovery@gmail.com

repo: bitpay/wallet


text:
Fix icon alignment

Now it as an 1:1 aspect to I guess it will display correctly on bitrise.io

Thanks for the fix ;)

authors: dag-io viktorbenei

repo: bitrise-io/bitrise-steplib


text:
Add 3rd party mac certificates recognition

OS X distribution certificates using the following naming:
3rd Party Mac Developer Application: Your Name (ZYWNASDLW5)
and it was ignored by certificates installer step.

Thanks, we'll release a new version of the step tomorrow morning!

v1.4.1 is now shared in the Step Lib - thanks again for the contribution!

authors: olegoid viktorbenei


text:
Add wipe method to Configuration storage.

Little helper method I found useful in "restore default settings" scenarios.

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

Codecov Report

Merging #117 into develop will decrease coverage by 0.02%.
The diff coverage is 33.33%.

@@             Coverage Diff             @@
##           develop     #117      +/-   ##
===========================================
- Coverage    59.43%   59.41%   -0.03%
===========================================
  Files           37       37
  Lines         3523     3526       +3
===========================================
+ Hits          2094     2095       +1
- Misses        1429     1431       +2

Impacted Files
Coverage Δ

bitshares/storage.py
49.6% <33.33%> (-0.2%)
:arrow_down:

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 2711c8f...ed83dba. Read the comment docs.

authors: CLAassistant codecov-io jhtitor

repo: bitshares/python-bitshares


text:
🛑 Luogu Ti is down

In f6c389d, Luogu Ti (https://ti.luogu.com.cn/problemset) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Luogu Ti is back up in f43afb1 after 40 minutes.

repo: bitsstdcheee/luogu-status


text:
🛑 Luogu CDN is down

In cdfaaf4, Luogu CDN (https://cdn.luogu.com.cn/fe/loader.js?ver=20230228-2) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Luogu CDN is back up in e9596a6 after 9 minutes.


text:
There is a way to change the icon at the corner?

I want to eliminate that icon, i rather to don't have it

set showDismissButton=NO;

authors: davidlondono sudhakar-varma

repo: bizibizi/BIZPopupView


text:
Service to extract text and save locally from pdfs in airtable

New REST API service GET/POST "/pdfstotext":

reads parameters from environment (AIRTABLE_API_KEY, AIRTABLE_BASE_ID) of config.ini (api_key, base_id)
reads all PDFs from Airtable
extracts text and saves TXT files locally in {STORAGE_DIR}/txt (by default STORAGE_DIR='./data')
skips already extracted files
filename: {uri}.txt
PDFs are NOT stored locally

Service is protected with basic auth.
OpenAPI (Swagger UI 3.0) documentation is NOT yet updated.

As discussed bilaterally ^^

authors: JohannesHool dev-ng

repo: bizres/report-text-extraction


text:
Unable to generate Java clases when WSDL imports XSD from the web

When generating Java from WSDL file that contains
<xsd:schema targetNamespace="http://foo.bar/Imports">
    <xsd:import schemaLocation="http://foo.bar/xsd_file.xsd" namespace="http://foo.bar/Service" />
</xsd:schema>

this error occurs:
org.apache.cxf.BusException: No conduit initiator was found for the namespace http://cxf.apache.org/transports/http.
	at org.apache.cxf.bus.managers.ConduitInitiatorManagerImpl.getConduitInitiator(ConduitInitiatorManagerImpl.java:108)
	at org.apache.cxf.transport.TransportURIResolver.resolve(TransportURIResolver.java:105)
	at org.apache.cxf.wsdl11.CatalogWSDLLocator.getImportInputSource(CatalogWSDLLocator.java:111)
	at org.apache.cxf.wsdl11.AbstractWrapperWSDLLocator.getImportInputSource(AbstractWrapperWSDLLocator.java:108)
	at com.ibm.wsdl.xml.WSDLReaderImpl.parseImport(WSDLReaderImpl.java:388)
	at com.ibm.wsdl.xml.WSDLReaderImpl.parseDefinitions(WSDLReaderImpl.java:312)
	at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(WSDLReaderImpl.java:2352)

When manually downloaded and saved those XSD files and updated paths in source WSDL, this error no longer occur.

Have you ever found a solution?

authors: Matej-Hlatky karl-dpg


text:
2 test failed on 64 bit Linux

I have no idea what this means, not had chance to dig into the code, first time I've looked at this, evaluating bgfx, but thought you might appreciate this feedback.
./bx.testRelease
../../../tests/run_test.cpp(11): Compiler: GCC 9.3.0, CPU: x86, Architecture: 64-bit, OS: Linux, CRT: GNU C Library, Date: Oct 21 2020, Time: 09:12:10, C++: C++14

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
bx.testRelease is a Catch v2.9.0 host application.
Run with -? for options

-------------------------------------------------------------------------------
isFinite, isInfinite, isNan
-------------------------------------------------------------------------------
../../../tests/math_test.cpp:13
...............................................................................

../../../tests/math_test.cpp:18: FAILED:
  REQUIRE( std::isnan(u.f) == bx::isNan(u.f) )
with expansion:
  false == true

-------------------------------------------------------------------------------
libm
-------------------------------------------------------------------------------
../../../tests/math_test.cpp:63
...............................................................................

../../../tests/math_test.cpp:73: FAILED:
  REQUIRE( bx::isNan(bx::mod(0.0f, 0.0f) ) )
with expansion:
  false

900.092000
===============================================================================
test cases:     130 |     128 passed | 2 failed
assertions: 1633491 | 1633489 passed | 2 failed

It was fixed in meantime...

authors: bkaradzic chriscamacho

repo: bkaradzic/bx