added AA parsing to fasta file reading

Previously the fasta reader couldn't actually parse AA sequences, this should fix that. I haven't tested how this should affect the reading of .fasta files for DNA/RNA sequences, but I don't think it should.

This is now failing because the tests expect _identify_nucleotypes to return a tuple of length 2, but it now returns something of length 3. I realise also that I've written the AA identifier into the _identify_nucleotypes function, which isn't actually true. So we could either rename that function in order to deal with this, or have a separate method for identifying AA sequences in fasta files.
(on this note, is it right that we expect 'RNA' or 'DNA' to be in the fasta string name? I guess it's fine to enforce it here, but I think in general the string can be anything?)

@csbrasnett thanks for the PR already! Here are my thoughts:

the string in fasta can be anything. That is true. However, there is no way  (to my knowledge) to distinguish if RNA, DNA or a protein is described without knowing the context. Thus we opted for enforcing RNA, DNA in the string descriptor instead of having an additional CLI flag that needs to be propagated.
we should probably rename _identify_nucleotypes to _identify_residues when adding AA
once renamed you can fix the test such that it can take 3 outputs; let me know if you need help with making the tests
only question remains should we simply assume if something is not RNA or DNA that it is a protein? @pckroon any thoughts no this from the wise old people ?

Thanks for checking @fgrunewald, I had a go at dealing with the tests but doesn't look like they worked

@csbrasnett could you add a test like the one in line 120 but for protein fasta files? The code should look something like the one shown below. You will need to put an example file with a sequence in the test data directory and then adjust the sequence list in the function below by the sequence in the data file
@pytest.mark.parametrize('extension, ', (
      "ig",
      "fasta"
     ))
def test_sequence_parses_PROTEIN(extension):
    filepath = Path(TEST_DATA + "/simple_seq_files/test_protein."+ extension)
    seq_graph = MetaMolecule.parsers[extension](filepath)
    # replace below with your small protein sequence; ignore termini
    monomers = ["A5", "U", "C", "G", "U", "A", "C", "A", "U3"]
    ref_graph = _monomers_to_linear_nx_graph(monomers)
    assert nx.is_isomorphic(seq_graph, ref_graph, node_match=_node_match)

As far as I understand why it's failing now, the test isn't finding the extension, but I'm not sure why?

sorry my bad. You need to add the following lines on top:
@pytest.mark.parametrize('extension, ', (
      "ig",
      "fasta"
     ))

ah grand thanks, I thought it was captured by the previous parametric, good to know. In this case I'll also remove the test for the .ig file because that's not a format that would be used for proteins.

@csbrasnett since you removed the ig, you can also drop the header and simply put in the full path to the fasta file. It is failing at the moment because it is splitting fasta into f a s t a

@csbrasnett also remove the @pytest.mark.parametrize() It is only needed when you explore a matrix of different input values

Thanks for all your help! First of many I hope :smile:


Help me troubleshoot please

Can someone point me in the right direction? I'm sure this has been covered but I'm not sure what to look for.  Getting these errors when trying to start homebridge. It was working fine, then stopped. I did updates on everything, but still getting this... Is it just a Hs100 error, or is it more?
[3/23/2017, 5:31:32 PM] ---
[3/23/2017, 5:31:32 PM] Loaded config.json with 0 accessories and 4 platforms.
[3/23/2017, 5:31:32 PM] ---
[3/23/2017, 5:31:32 PM] Loading 4 platforms...
[3/23/2017, 5:31:32 PM] Initializing Nest platform...
[3/23/2017, 5:31:32 PM] Fetching Nest devices.
[3/23/2017, 5:31:32 PM] [Homebridge Info Server] Initializing Info platform...
[3/23/2017, 5:31:32 PM] [LiFx] Initializing LifxLan platform...
[3/23/2017, 5:31:32 PM] Initializing Hs100 platform...
events.js:163
      throw er; // Unhandled 'error' event
      ^

Error: listen EADDRINUSE :::9876
     at Object.exports._errnoException (util.js:1034:11)
     at exports._exceptionWithHostPort (util.js:1057:20)
     at Server._listen2 (net.js:1270:14)
     at listen (net.js:1306:10)
     at Server.listen (net.js:1397:7)
     at new InfoPlatform (/usr/local/lib/node_modules/homebridge-info/index.js:63:12)
     at Server._loadPlatforms (/usr/local/lib/node_modules/homebridge/lib/server.js:294:32)
     at Server.run (/usr/local/lib/node_modules/homebridge/lib/server.js:80:36)
     at module.exports (/usr/local/lib/node_modules/homebridge/lib/cli.js:40:10)
     at Object.<anonymous> (/usr/local/lib/node_modules/homebridge/bin/homebridge:17:22)
     at Module._compile (module.js:571:32)
     at Object.Module._extensions..js (module.js:580:10)
     at Module.load (module.js:488:32)
     at tryModuleLoad (module.js:447:12)
     at Function.Module._load (module.js:439:3)
     at Module.runMain (module.js:605:10)
     at run (bootstrap_node.js:427:7)
     at startup (bootstrap_node.js:148:9)
     at bootstrap_node.js:542:3

There is an issue with the latest HS100 plugin.
The only fix I know of at the moment is to install an older version of the plugin that works as explained here:
https://github.com/plasticrake/homebridge-hs100/issues/17

This is a problem related to the homebridge-info plugin, and not homebridge, and should be raised there.
Without knowing the plugin, the error is indicating something else is using the same port.  Are you running something else related to the info plugin on the machine that may be using the port?

On Mar 23, 2017, at 7:18 PM, Nate Lee<EMAIL_ADDRESS>wrote:
Can someone point me in the right direction? I'm sure this has been covered but I'm not sure what to look for. Getting these errors when trying to start homebridge. It was working fine, then stopped. I did updates on everything, but still getting this...
`[3/23/2017, 5:31:32 PM] Loaded plugin: homebridge-hs100
[3/23/2017, 5:31:32 PM] Registering platform 'homebridge-hs100.Hs100'
[3/23/2017, 5:31:32 PM] ---
[3/23/2017, 5:31:32 PM] Loaded plugin: homebridge-info
[3/23/2017, 5:31:32 PM] Registering platform 'homebridge-info.Info'
[3/23/2017, 5:31:32 PM] ---
[3/23/2017, 5:31:32 PM] Loaded plugin: homebridge-lifx-lan
[3/23/2017, 5:31:32 PM] Registering platform 'homebridge-lifx-lan.LifxLan'
[3/23/2017, 5:31:32 PM] ---
[3/23/2017, 5:31:32 PM] Loaded plugin: homebridge-nest
[3/23/2017, 5:31:32 PM] Registering platform 'homebridge-nest.Nest'
[3/23/2017, 5:31:32 PM] ---
[3/23/2017, 5:31:32 PM] Loaded config.json with 0 accessories and 4 platforms.
[3/23/2017, 5:31:32 PM] ---
[3/23/2017, 5:31:32 PM] Loading 4 platforms...
[3/23/2017, 5:31:32 PM] Initializing Nest platform...
[3/23/2017, 5:31:32 PM] Fetching Nest devices.
[3/23/2017, 5:31:32 PM] [Homebridge Info Server] Initializing Info platform...
[3/23/2017, 5:31:32 PM] [LiFx] Initializing LifxLan platform...
[3/23/2017, 5:31:32 PM] Initializing Hs100 platform...
events.js:163
throw er; // Unhandled 'error' event
^
Error: listen EADDRINUSE :::9876
at Object.exports._errnoException (util.js:1034:11)
at exports._exceptionWithHostPort (util.js:1057:20)
at Server._listen2 (net.js:1270:14)
at listen (net.js:1306:10)
at Server.listen (net.js:1397:7)
at new InfoPlatform (/usr/local/lib/node_modules/homebridge-info/index.js:63:12)
at Server._loadPlatforms (/usr/local/lib/node_modules/homebridge/lib/server.js:294:32)
at Server.run (/usr/local/lib/node_modules/homebridge/lib/server.js:80:36)
at module.exports (/usr/local/lib/node_modules/homebridge/lib/cli.js:40:10)
at Object. (/usr/local/lib/node_modules/homebridge/bin/homebridge:17:22)
at Module._compile (module.js:571:32)
at Object.Module._extensions..js (module.js:580:10)
at Module.load (module.js:488:32)
at tryModuleLoad (module.js:447:12)
at Function.Module._load (module.js:439:3)
at Module.runMain (module.js:605:10)
at run (bootstrap_node.js:427:7)
at startup (bootstrap_node.js:148:9)
at bootstrap_node.js:542:3`
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

Are you running something else related to the info plugin on the machine that may be using the port?
@NorthernMan54 Not running anything else using the port. I don't even know what the -info plugin is for. It's just there. Maybe it was added in an update I ran?

It looks like you're trying to run two instances of Homebridge at once.
@SkyJohn Yeah I tried killall or launchctl stop and when I run it again I get the same EADDRINUSE error. Re Hs100 I'll take a look at that link. Hope it works b/c the plugs are the main reason I use Homebridge.

So I just removed the Hs100 plugin and took the line of out config.json and now I am getting the error below, which obviously shows it's still looking for the Hs100 devices that used to work. I found them referenced in .homebridge/accessories/cachedAccessories

[3/23/2017, 8:10:40 PM] Loaded plugin: homebridge-info
[3/23/2017, 8:10:40 PM] Registering platform 'homebridge-info.Info'
[3/23/2017, 8:10:40 PM] ---
[3/23/2017, 8:10:40 PM] Loaded plugin: homebridge-lifx-lan
[3/23/2017, 8:10:40 PM] Registering platform 'homebridge-lifx-lan.LifxLan'
[3/23/2017, 8:10:40 PM] ---
[3/23/2017, 8:10:40 PM] Loaded plugin: homebridge-nest
[3/23/2017, 8:10:40 PM] Registering platform 'homebridge-nest.Nest'
[3/23/2017, 8:10:40 PM] ---
[3/23/2017, 8:10:40 PM] Loaded config.json with 0 accessories and 3 platforms.
[3/23/2017, 8:10:40 PM] ---
[3/23/2017, 8:10:40 PM] Loading 3 platforms...
[3/23/2017, 8:10:40 PM] Initializing Nest platform...
[3/23/2017, 8:10:40 PM] Fetching Nest devices.
[3/23/2017, 8:10:40 PM] [Homebridge Info Server] Initializing Info platform...
[3/23/2017, 8:10:40 PM] [LiFx] Initializing LifxLan platform...
Failed to find plugin to handle accessory Sunroom Lights
Failed to find plugin to handle accessory SmartPlug2
Failed to find plugin to handle accessory Emily Desk Light
Failed to find plugin to handle accessory Fireplace Lights
Failed to find plugin to handle accessory Emily Equipment
Failed to find plugin to handle accessory TV Plug
events.js:163
throw er; // Unhandled 'error' event
^

You can deleted the cachedAccessories file and then they shouldn't show up when you start homebridge.

Still gives me this
[3/23/2017, 8:26:16 PM] Loading 3 platforms...
[3/23/2017, 8:26:16 PM] Initializing Nest platform...
[3/23/2017, 8:26:16 PM] Fetching Nest devices.
[3/23/2017, 8:26:16 PM] [Homebridge Info Server] Initializing Info platform...
[3/23/2017, 8:26:16 PM] [LiFx] Initializing LifxLan platform...
events.js:163
      throw er; // Unhandled 'error' event
      ^

It may be worth noting that in HomeKit Homebridge doesn't say offline and the Accessories just say Updating. The note at the top says No accessories responding.

@NorthernMan54 No dice. I was able to remove and re-add homebridge + accessories, but they all end up saying No Response now (vs Updating). On the server side, whether I run Homebridge with or without hS100 I am still getting the error below:
events.js:163
      throw er; // Unhandled 'error' event
      ^

Your problem is with homebridge-info. It tries to bind a port that's already in use. Try use a different port or disable that plugin.

@KhaosT Why was this closed? The issue isn't completely resolved yet.
I changed homebridge-info to an known open port and the errors changed, but it still won't start properly. So I changed the homebridge port to 36632 and it starts now, it seems. However, now I can't add homebridge back to my iOS app.
[3/23/2017, 11:02:31 PM] Loaded plugin: homebridge-hs100
[3/23/2017, 11:02:31 PM] Registering platform 'homebridge-hs100.Hs100'
[3/23/2017, 11:02:31 PM] ---
[3/23/2017, 11:02:31 PM] Loaded plugin: homebridge-info
[3/23/2017, 11:02:31 PM] Registering platform 'homebridge-info.Info'
[3/23/2017, 11:02:31 PM] ---
[3/23/2017, 11:02:31 PM] Loaded plugin: homebridge-lifx-lan
[3/23/2017, 11:02:31 PM] Registering platform 'homebridge-lifx-lan.LifxLan'
[3/23/2017, 11:02:31 PM] ---
[3/23/2017, 11:02:31 PM] Loaded plugin: homebridge-nest
[3/23/2017, 11:02:31 PM] Registering platform 'homebridge-nest.Nest'
[3/23/2017, 11:02:31 PM] ---
[3/23/2017, 11:02:31 PM] Loaded config.json with 0 accessories and 4 platforms.
[3/23/2017, 11:02:31 PM] ---
[3/23/2017, 11:02:31 PM] Loading 4 platforms...
[3/23/2017, 11:02:31 PM] Initializing Nest platform...
[3/23/2017, 11:02:31 PM] Fetching Nest devices.
[3/23/2017, 11:02:31 PM] [Homebridge Info Server] Initializing Info platform...
[3/23/2017, 11:02:31 PM] [LiFx] Initializing LifxLan platform...
[3/23/2017, 11:02:31 PM] Initializing Hs100 platform...
[3/23/2017, 11:02:31 PM] [Homebridge Info Server] is listening on: http://<IP_ADDRESS>:9879
LIFX Client UDP error
Trace: { Error: bind EADDRINUSE <IP_ADDRESS>:56700
    at Object.exports._errnoException (util.js:1034:11)
    at exports._exceptionWithHostPort (util.js:1057:20)
    at _handle.lookup (dgram.js:215:18)
    at _combinedTickCallback (internal/process/next_tick.js:83:11)
    at process._tickCallback (internal/process/next_tick.js:104:9)
    at Module.runMain (module.js:607:11)
    at run (bootstrap_node.js:427:7)
    at startup (bootstrap_node.js:148:9)
    at bootstrap_node.js:542:3
  code: 'EADDRINUSE',
  errno: 'EADDRINUSE',
  syscall: 'bind',
  address: '<IP_ADDRESS>',
  port: 56700 }
    at Client.<anonymous> (/usr/local/lib/node_modules/homebridge-lifx-lan/node_modules/node-lifx/lib/lifx/client.js:147:13)
    at emitOne (events.js:96:13)
    at Socket.emit (events.js:191:7)
    at _handle.lookup (dgram.js:216:14)
    at _combinedTickCallback (internal/process/next_tick.js:83:11)
    at process._tickCallback (internal/process/next_tick.js:104:9)
    at Module.runMain (module.js:607:11)
    at run (bootstrap_node.js:427:7)
    at startup (bootstrap_node.js:148:9)
    at bootstrap_node.js:542:3
[3/23/2017, 11:02:31 PM] New Plug Online: TV Plug [80060BBEF5F1C26C4E291B8C3DC82C2B18197899]
[3/23/2017, 11:02:31 PM] Configuring: TV Plug
[3/23/2017, 11:02:31 PM] New Plug Online: SmartPlug2 [80062298D9CF7012D2CBCC80AE35BCA918072E64]
[3/23/2017, 11:02:31 PM] Configuring: SmartPlug2
[3/23/2017, 11:02:32 PM] New Plug Online: Emily Equipment  [8006B1C6021500ACC52FD9BB4077FDC1181AFECC]
[3/23/2017, 11:02:32 PM] Configuring: Emily Equipment
[3/23/2017, 11:02:32 PM] New Plug Online: Emily Desk Light [8006321DD42C9EE63FB694DD59592B2018079828]
[3/23/2017, 11:02:32 PM] Configuring: Emily Desk Light
[3/23/2017, 11:02:32 PM] New Plug Online: Fireplace Lights [8006732B5CFF37367D519DB48DF62C5D1807CAB4]
[3/23/2017, 11:02:32 PM] Configuring: Fireplace Lights
[3/23/2017, 11:02:32 PM] New Plug Online: Sunroom Lights [800623E747DABB035A2B870B8B70FD9D18078F62]
[3/23/2017, 11:02:32 PM] Configuring: Sunroom Lights
[3/23/2017, 11:02:33 PM] Software version for Zach Room Camera is: 205-600052
[3/23/2017, 11:02:33 PM] Away for Zach Room Camera is: 0
[3/23/2017, 11:02:33 PM] Initializing platform accessory 'Zach Room Camera'...
Scan this code with your HomeKit App on your iOS device to pair with Homebridge:

    ┌────────────┐
    │ 031-45-154 │
    └────────────┘

[3/23/2017, 11:02:33 PM] Homebridge is running on port 36632.
[3/23/2017, 11:03:01 PM] Online: Emily Desk Light [8006321DD42C9EE63FB694DD59592B2018079828]
[3/23/2017, 11:03:01 PM] Online: Emily Equipment  [8006B1C6021500ACC52FD9BB4077FDC1181AFECC]
[3/23/2017, 11:03:01 PM] Online: TV Plug [80060BBEF5F1C26C4E291B8C3DC82C2B18197899]
[3/23/2017, 11:03:01 PM] Online: SmartPlug2 [80062298D9CF7012D2CBCC80AE35BCA918072E64]
[3/23/2017, 11:03:02 PM] Online: Sunroom Lights [800623E747DABB035A2B870B8B70FD9D18078F62]
[3/23/2017, 11:03:31 PM] Online: TV Plug [80060BBEF5F1C26C4E291B8C3DC82C2B18197899]
[3/23/2017, 11:03:31 PM] Online: SmartPlug2 [80062298D9CF7012D2CBCC80AE35BCA918072E64]
[3/23/2017, 11:03:32 PM] Online: Emily Equipment  [8006B1C6021500ACC52FD9BB4077FDC1181AFECC]
[3/23/2017, 11:03:32 PM] Online: Emily Desk Light [8006321DD42C9EE63FB694DD59592B2018079828]
[3/23/2017, 11:03:32 PM] Online: Fireplace Lights [8006732B5CFF37367D519DB48DF62C5D1807CAB4]
[3/23/2017, 11:03:32 PM] Online: Sunroom Lights [800623E747DABB035A2B870B8B70FD9D18078F62]
HS100 Plug TCP error
Trace: { Error: connect ETIMEDOUT <IP_ADDRESS>:9999
    at Object.exports._errnoException (util.js:1034:11)
    at exports._exceptionWithHostPort (util.js:1057:20)
    at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1099:14)
  code: 'ETIMEDOUT',
  errno: 'ETIMEDOUT',
  syscall: 'connect',
  address: '<IP_ADDRESS>',
  port: 9999 }
    at Socket.socket.on.on.on (/usr/local/lib/node_modules/homebridge-hs100/node_modules/hs100-api/lib/plug.js:61:17)
    at emitOne (events.js:96:13)
    at Socket.emit (events.js:191:7)
    at emitErrorNT (net.js:1289:8)
    at _combinedTickCallback (internal/process/next_tick.js:80:11)
    at process._tickCallback (internal/process/next_tick.js:104:9)
[3/23/2017, 11:03:47 PM] { Error: connect ETIMEDOUT <IP_ADDRESS>:9999
    at Object.exports._errnoException (util.js:1034:11)
    at exports._exceptionWithHostPort (util.js:1057:20)
    at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1099:14)
  code: 'ETIMEDOUT',
  errno: 'ETIMEDOUT',
  syscall: 'connect',
  address: '<IP_ADDRESS>',
  port: 9999 }
[3/23/2017, 11:04:01 PM] Online: Emily Desk Light [8006321DD42C9EE63FB694DD59592B2018079828]
[3/23/2017, 11:04:01 PM] Online: Emily Equipment  [8006B1C6021500ACC52FD9BB4077FDC1181AFECC]
[3/23/2017, 11:04:01 PM] Online: TV Plug [80060BBEF5F1C26C4E291B8C3DC82C2B18197899]
[3/23/2017, 11:04:01 PM] Online: SmartPlug2 [80062298D9CF7012D2CBCC80AE35BCA918072E64]
[3/23/2017, 11:04:02 PM] Online: Sunroom Lights [800623E747DABB035A2B870B8B70FD9D18078F62]
[3/23/2017, 11:04:02 PM] Online: Fireplace Lights [8006732B5CFF37367D519DB48DF62C5D1807CAB4]
[3/23/2017, 11:04:31 PM] Online: Emily Desk Light [8006321DD42C9EE63FB694DD59592B2018079828]
[3/23/2017, 11:04:31 PM] Online: Emily Equipment  [8006B1C6021500ACC52FD9BB4077FDC1181AFECC]
[3/23/2017, 11:04:31 PM] Online: TV Plug [80060BBEF5F1C26C4E291B8C3DC82C2B18197899]
[3/23/2017, 11:04:31 PM] Online: SmartPlug2 [80062298D9CF7012D2CBCC80AE35BCA918072E64]
[3/23/2017, 11:04:32 PM] Online: Fireplace Lights [8006732B5CFF37367D519DB48DF62C5D1807CAB4]
[3/23/2017, 11:04:32 PM] Online: Sunroom Lights [800623E747DABB035A2B870B8B70FD9D18078F62]
[3/23/2017, 11:05:01 PM] Online: Emily Desk Light [8006321DD42C9EE63FB694DD59592B2018079828]
[3/23/2017, 11:05:01 PM] Online: Emily Equipment  [8006B1C6021500ACC52FD9BB4077FDC1181AFECC]
[3/23/2017, 11:05:01 PM] Online: TV Plug [80060BBEF5F1C26C4E291B8C3DC82C2B18197899]
[3/23/2017, 11:05:01 PM] Online: SmartPlug2 [80062298D9CF7012D2CBCC80AE35BCA918072E64]
[3/23/2017, 11:05:02 PM] Online: Fireplace Lights [8006732B5CFF37367D519DB48DF62C5D1807CAB4]
[3/23/2017, 11:05:02 PM] Online: Sunroom Lights [800623E747DABB035A2B870B8B70FD9D18078F62]
[3/23/2017, 11:05:31 PM] Online: Emily Desk Light [8006321DD42C9EE63FB694DD59592B2018079828]
[3/23/2017, 11:05:31 PM] Online: Emily Equipment  [8006B1C6021500ACC52FD9BB4077FDC1181AFECC]
[3/23/2017, 11:05:31 PM] Online: TV Plug [80060BBEF5F1C26C4E291B8C3DC82C2B18197899]
[3/23/2017, 11:05:31 PM] Online: SmartPlug2 [80062298D9CF7012D2CBCC80AE35BCA918072E64]
[3/23/2017, 11:05:32 PM] Online: Sunroom Lights [800623E747DABB035A2B870B8B70FD9D18078F62]
[3/23/2017, 11:05:32 PM] Online: Fireplace Lights [8006732B5CFF37367D519DB48DF62C5D1807CAB4]
[3/23/2017, 11:06:01 PM] Online: Emily Equipment  [8006B1C6021500ACC52FD9BB4077FDC1181AFECC]
[3/23/2017, 11:06:01 PM] Online: Emily Desk Light [8006321DD42C9EE63FB694DD59592B2018079828]
[3/23/2017, 11:06:01 PM] Online: TV Plug [80060BBEF5F1C26C4E291B8C3DC82C2B18197899]
[3/23/2017, 11:06:01 PM] Online: SmartPlug2 [80062298D9CF7012D2CBCC80AE35BCA918072E64]
[3/23/2017, 11:06:02 PM] Online: Fireplace Lights [8006732B5CFF37367D519DB48DF62C5D1807CAB4]
[3/23/2017, 11:06:02 PM] Online: Sunroom Lights [800623E747DABB035A2B870B8B70FD9D18078F62]
^C[3/23/2017, 11:06:09 PM] Got SIGINT, shutting down Homebridge...

It was closed as it is not a homebridge but a homebridge-info issue. Raise your issue in the correct repository, or read their README how to change the port. https://github.com/maplesteve/homebridge-info


Fixed URL bug and embed IDE in C pages

This pull request is regarding issue #291
🛠 Fixes Issue
Fixed URL routing in C language page that were previously redirecting to CPP pages.
👨💻 Changes proposed
Embedded IDE in C language pages
✔ Check List (Check all the applicable boxes)

[x] My code follows the code style of this project.
[x] This PR does not contain plagiarized content.
[x] The title of my pull request is a short description of the requested changes.

📷 Screenshots

@KKhushhalR2405 , @raghavTinker Bhaiya, do review it once pls :)


Mechanical Pipes can transform fluids

This is actually an old bug that has been covered in #2053 but it happens it's back.
Basically, when you connect 2 different fluid networks, the fluid type of one of the network will get replaced with the fluid type of the other, enabling a massive fluid exploit (creating lithium from water for example).

Oops sorry, it's not exactly the same bug as #2053 but it's still a bug on its own.

As you may have guess already, it affects gases too. When 2 gas networks merge, one gas is replaced by the other.

Yeah, this bug sucks, I've tried to come up with ways to prevent it but there's always some kind of workaround.  TE handles this by having pipes of different fluid types simply not connect, but I'm not a big fan of that kind of functionality.  I'm thinking that I'll incorporate some method to have the pipe drop on placement if two adjacent networks have differing fluid types.

Wasn't that the previous pressurized tubes behaviour? That is, preventing having 2 different networks close to each other.
Another idea could be setting colours on parts of the network to prevent any merge (something similar to logistical transporters). While it doesn't solve all the issues, it gives the player some control over his network.
Or maybe a filtering system. Once a network has been set to a given type of fluid, it won't be able to connect any other filtered network. Pretty much the same idea as colours but applied to the whole network. I was thinking of this since I read somewhere a Mekanism transportation block (sort of Dimensional Transceiver/Tesseract) was considered. Without a filtering system, teleport is almost out of reach imho. This would then require a manual purge of the network to change its fluid/gas type, which can also be a real pain.
I wish I could help more but none of those ideas are very sexy :(

My compromise is that the first fluid/gas type found in a list of transmitters is set as the primary type, and all other types of fluids/gases are ignored.  Hopefully I can make this better in the near future.


Running ILI9341 and XPT2046 on the same SPI bus

I am quite new to Micro python, been playing around with it for the last two weeks . I have a ILI9341 with XPT2046 touch controller and been using your library. The board has 11pins (GND) (VCC) (CLK) (MOSI) (RES) (DC) (BLK) (MISO) (CS1 [Screen Selector]) (CS2 [Touch Selector]) (Pen [Touch interrupt : 3v3 normally when I touch the screen goes to 0v and vice versa]) Here is my Settings
from ili9341 import Display
from machine import Pin, SPI
from xpt2046 import Touch

TFT_CLK_PIN = const(6)
TFT_MOSI_PIN = const(7)
#TFT_MISO_PIN = const(4)

TFT_CS_PIN = const(13)
TFT_RST_PIN = const(14)
TFT_DC_PIN = const(15)

XPT_CLK_PIN = const(10)
XPT_MOSI_PIN = const(11)
XPT_MISO_PIN = const(8)

XPT_CS_PIN = const(12)
XPT_INT = const(0)

def createMyDisplay():
    spiTFT = SPI(0, baudrate=1000000, sck=Pin(TFT_CLK_PIN), mosi=Pin(TFT_MOSI_PIN))
    display = Display(spiTFT,dc=Pin(TFT_DC_PIN), cs=Pin(TFT_CS_PIN), rst=Pin(TFT_RST_PIN),width=240, height=320, rotation=180)
    return display

def createXPT(touch_handler):
    spiXPT = SPI(1, baudrate=1000000,sck=Pin(XPT_CLK_PIN), mosi=Pin(XPT_MOSI_PIN), miso=Pin(XPT_MISO_PIN))
    xpt = Touch(spiXPT, cs=Pin(XPT_CS_PIN), int_pin=Pin(XPT_INT),int_handler=touch_handler)
    return xpt

I can either use the screen or use the touch screen, I cannot seem to get both working on the same SPI Bus. I have used a variety of settings ! Any help would be appreciated ?

The data i received when running the touch screen XPT2046 is not correct so i think that the chip is damaged and might have mislead me on the SPI bus. Thanks for the help.


Improve documentation for cwt

To avoid confusion as in #379, we should improve the CWT documentation.  Specifically, it would be nice to explicitly display the equations corresponding to each wavelet and better guide the user on how to choose the scales.

done in gh-387, closing


Mute/Unmute functions are reverted

Before opening the issue, have you...?

[X] Searched for existing issues
[X] Looked through the wiki
[X] Updated MonitorControl to the latest version (if applicable)

Describe the bug
My monitor is muted when sound is set to any value but muted
My monitor is not unmuted when sound is muted
Steps to reproduce
On a Monoprice V3L6W monitor, connected with display port on Macbook Pro 2021 USB-C, install MonitorControl
Then, turn sound volume up -> no sound, while volume icon shows it is not muted
turn sound volume down until muted, or use mute button -> sound is back, while volume icon show it is muted
Expected behavior
At least, sound is muted when volume is set to 0 (aka muted), and sound is working when volume is set to higher than 0
In the best case scenario, volume control allows to set volume to different value (the reason I've installed this software)
Anything else?
my display signal goes through a On a Monoprice V3L6W monitor, connected with display port on Macbook Pro 2021 USB-C (more details available here: https://www.amazon.fr/Cable-Matters-DisplayPort-Adaptateur-Thunderbolt/dp/B06ZY1ZJDQ/ref=pd_bxgy_img_sccl_1/262-8434534-7420027?pd_rd_w=kxlHI&content-id=amzn1.sym.3e903e31-26aa-46b7-bc9c-c2062226ae30&pf_rd_p=3e903e31-26aa-46b7-bc9c-c2062226ae30&pf_rd_r=K8660XDV513549FP0JAH&pd_rd_wg=aIhiU&pd_rd_r=0aec36ec-afd9-4ae8-bcbb-2e5d5c7feafe&pd_rd_i=B06ZY1ZJDQ&psc=1)
Environment Information (please complete the following information)
- macOS version: Ventura 13.1
- Mac model:MacBook Pro 16 2021
- MonitorControl version: 4.1.0
- Monitor(s):Monoprice V3L6W
- Apple Silicon/M1 (yes or no): Apple M1 Max

Hi there - this is a highly monitor specific problem. Probably the MUTE On/Off values are wired in a reversed fashion in the display firmware.
Do you have the Mute command enabled in advanced settings for the display or is this how it works by default? If the latter, then the best thing you can probably do is not to use DDC volume controls for this display I am afraid or seek an app that does software based volume control (eqMac or some alternative).


Sidebar: we have lost the "SELECTED ATTRIBUTES view all" column header.

This needs to be there.

the bottom row is "View all attributes (42) >>"
Is that what you wanted or something else?
(Btw, that count should always read "42" in my opinion)

From: carlkesselman<EMAIL_ADDRESS>Sent: Saturday, October 03, 2015 9:51 AM
To: informatics-isi-edu/chaise
Subject: [chaise] Sidebar: we have lost the "SELECTED ATTRIBUTES view all" column header. (#93)
This needs to be there.

Reply to this email directly or view it on GitHubhttps://github.com/informatics-isi-edu/chaise/issues/93.
[https://avatars3.githubusercontent.com/u/3597150?v=3&s=400]https://github.com/informatics-isi-edu/chaise/issues/93
Sidebar: we have lost the "SELECTED ATTRIBUTES view all" column header. · Issue #93 · informatics-isi-edu/chaise · GitHub
This needs to be there.
Read more...https://github.com/informatics-isi-edu/chaise/issues/93

Ahh, there it is…visually, I completely lost this.
However, now we have a can’t get there from here problem.  If you go into the view all, there is no way to get back to the subset view.
Carl

Dr. Carl Kesselman
Dean’s Professor, Epstein Department of Industrial and Systems Engineering
Fellow, Information Sciences Institute
Viterbi School of Engineering
Professor, Preventive Medicine
Keck School of Medicine
University of Southern California
4676 Admiralty Way, Suite 1001, Marina del Rey, CA  90292-6695
Phone:  +1<PHONE_NUMBER>
Email:  carl<EMAIL_ADDRESS>Web: http://www.isi.edu/~carl
On Oct 3, 2015, at 3:13 PM, robes <notifications<EMAIL_ADDRESS>wrote:
the bottom row is "View all attributes (42) >>"
Is that what you wanted or something else?
(Btw, that count should always read "42" in my opinion)

From: carlkesselman <notifications<EMAIL_ADDRESS>Sent: Saturday, October 03, 2015 9:51 AM
To: informatics-isi-edu/chaise
Subject: [chaise] Sidebar: we have lost the "SELECTED ATTRIBUTES view all" column header. (#93)
This needs to be there.

Reply to this email directly or view it on GitHubhttps://github.com/informatics-isi-edu/chaise/issues/93.
[https://avatars3.githubusercontent.com/u/3597150?v=3&s=400]https://github.com/informatics-isi-edu/chaise/issues/93
Sidebar: we have lost the "SELECTED ATTRIBUTES view all" column header. · Issue #93 · informatics-isi-edu/chaise · GitHub
This needs to be there.
Read more...https://github.com/informatics-isi-edu/chaise/issues/93
—
Reply to this email directly or view it on GitHubhttps://github.com/informatics-isi-edu/chaise/issues/93#issuecomment-145294728.

it's not too obvious. but you can click the (X) icon and get back to the previous page.

From: carlkesselman<EMAIL_ADDRESS>Sent: Saturday, October 03, 2015 3:20 PM
To: informatics-isi-edu/chaise
Cc: Robert Schuler
Subject: Re: [chaise] Sidebar: we have lost the "SELECTED ATTRIBUTES view all" column header. (#93)
Ahh, there it is...visually, I completely lost this.
However, now we have a can't get there from here problem. If you go into the view all, there is no way to get back to the subset view.
Carl

Dr. Carl Kesselman
Dean's Professor, Epstein Department of Industrial and Systems Engineering
Fellow, Information Sciences Institute
Viterbi School of Engineering
Professor, Preventive Medicine
Keck School of Medicine
University of Southern California
4676 Admiralty Way, Suite 1001, Marina del Rey, CA 90292-6695
Phone: +1<PHONE_NUMBER>
Email: carl<EMAIL_ADDRESS>Web: http://www.isi.edu/~carl
On Oct 3, 2015, at 3:13 PM, robes <notifications<EMAIL_ADDRESS>wrote:
the bottom row is "View all attributes (42) >>"
Is that what you wanted or something else?
(Btw, that count should always read "42" in my opinion)

From: carlkesselman <notifications<EMAIL_ADDRESS>Sent: Saturday, October 03, 2015 9:51 AM
To: informatics-isi-edu/chaise
Subject: [chaise] Sidebar: we have lost the "SELECTED ATTRIBUTES view all" column header. (#93)
This needs to be there.

Reply to this email directly or view it on GitHubhttps://github.com/informatics-isi-edu/chaise/issues/93.
[https://avatars3.githubusercontent.com/u/3597150?v=3&s=400]https://github.com/informatics-isi-edu/chaise/issues/93
Sidebar: we have lost the "SELECTED ATTRIBUTES view all" column header. · Issue #93 · informatics-isi-edu/chaise · GitHub
This needs to be there.
Read more...https://github.com/informatics-isi-edu/chaise/issues/93

Reply to this email directly or view it on GitHubhttps://github.com/informatics-isi-edu/chaise/issues/93#issuecomment-145294728.

Reply to this email directly or view it on GitHubhttps://github.com/informatics-isi-edu/chaise/issues/93#issuecomment-145295021.
[https://avatars3.githubusercontent.com/u/3597150?v=3&s=400]https://github.com/informatics-isi-edu/chaise/issues/93#issuecomment-145295021
Sidebar: we have lost the "SELECTED ATTRIBUTES view all" column header. · Issue #93 · informatics-isi-edu/chaise · GitHub
This needs to be there.
Read more...https://github.com/informatics-isi-edu/chaise/issues/93#issuecomment-145295021


Update Package.swift to use Swift 5+

Upgrade Package.swift so it can take advantage of the latest features.

Use swift-tools-version:5+ instead of swift-tools-version:4.2
Add "platform" parameter to the package declaration
Add "swiftLanguageVersions" parameter to the package declaration

Documentation references:
https://developer.apple.com/documentation/swift_packages/package
https://developer.apple.com/documentation/swift_packages/platform
https://developer.apple.com/documentation/swift_packages/package/3197887-swiftlanguageversions
https://developer.apple.com/documentation/swift_packages/swiftversion

Right now I am seeing 5.1 at https://github.com/fulldecent/swift5-module-template/blob/master/xxPROJECTxNAMExx/Package.swift#L1
Are you seeing 4.2 somewhere?

Regarding platform and swiftLanguageVersions. Perhaps we can add a note into the Package.swift file. But since this is a default file intended to be used by everybody programming in Swift then perhaps we should not limit the default by choosing these defaults.

Sorry, I just added the issue concerning the usage of new parameters. I though it was using the old version of swift because I did not see "platform" param.

thank you, closing


[BUG] Change python3 to python

If you install Python on a Windows machine, it usually is only available as python and not as python3. This will then e.g. break the following: https://github.com/EngFlow/reclient-configs/blob/fe37dd84dc35cc9524f27e5b281b5d896c22fd8a/configure_reclient.py#L144
We can probably expect nowadays machines have Python3 as python. Would you be up for a contribution to change python3 -> python?
Happy for more thoughts on this, thanks!

Hmm, we have Chromium builds on Windows, and what worked was running both scripts with cmd, e.g.:
cmd.exe /c "python3 reclient-configs\configure_reclient.py --src_dir=%SRC_PATH%"

So Windows can run python3, it just needs some convincing :-)
I'm a wary that the change might backfire with existing users, e.g. Brave. To make it backward compatible we'd probably need to clone both scripts and have a python version alongside a python3 version, which is just not quite worth it, imo.

hm weird! So when I installed Python officially there was only python and no python3 in my PATH. Sounds like https://github.com/python/cpython/issues/99185.
TL;DR: python3 will target the WindowsStore Python while python will target the actual python.exe.
I have a workaround for now, so happy to close, just confusing and I thought python is what tools use nowadays.

What convention does Chromium use upstream? Looks like python3.

AFAIK, Chromium migrated to python3 everywhere and now relies on the Python version to be at least 3.8.
However: I just realized that I think I can fix your problem with just this: https://github.com/EngFlow/reclient-configs/pull/8
Can you try this out, please? Thank you!

I can confirm that this works for us. Appreciate!


Add a compiler warning for lowercase literals in patterns

UserVoice request (approved for F# 4.x): http://fslang.uservoice.com/forums/245727-f-language/suggestions/6668206-warn-when-literal-attribute-is-used-with-lowercase
This is a small and low-risk change to warn users when lowercase literals are ignored in favor of variable binding patterns.
Unit tests have been added.

I like it, and it looks good from my review.

@neoeinstein Thanks for reviewing. It's really useful.

Very important warning. Great job! :+1:

This looks good to me.

committed.

@KevinRansom I think it's better to reference the PR number and the issue number (if there is one) in the commit message. As it is committed now, it's really hard to blame the original author for bugs in the original PR :-).

I screwed up the commit, I just reverted and am going to attribute it properly.
Sorry, it's kind a late here.

A quick look at the PR # explains everything!

When I rebased, I forgot to set the author correctly. There are many times when I wished we just pressed the merge button.
Once again sorry for the brain-fart.  Now it's time for bed.
Kevin

Dude, you are the one that is merging. Just make that decision to use the merge button. ;-)

@KevinRansom No worries. I don't mind at all. The main problem is traceability and maintainability that we have to be careful with merging PRs.

@forki :+1:


State Store implementation based on Oracle Database

Describe the proposal
An implementation of the State Store building block based on Oracle Database (similar to the implementations for MySQL, PostgreSQL, SQLServer). The relational database is used to persist data to and retrieve state data from. The component ideally supports both an on premises (including cloud IaaS) installation of Oracle Database as well as the managed OCI Autonomous Database cloud service. The pure Go driver for Oracle (go_ora, v2) that does not require an Oracle Instant Client or any other client libraries to installed seems best suited for the implementation of this state store component.
Note: I am currently working on such an implementation and intent to submit a PR in the next few days,.

/cc @artursouza

I am looking for the exact API definition for StateStores, especially in the areas of ETag (concurrency) and Time To Live. The required behavior is not clear to me - and the E2E test does not really cover these areas either. The state store implementations seem to be not in exact mutual alignment. Can you direct me towards the final word on the StateStore API?


Do not throw exception in order producer demo.

UnsupportedEncodingException should not be throw out in main function.
public static void main(String[] args) throws UnsupportedEncodingException

https://github.com/apache/rocketmq/blob/develop/example/src/main/java/org/apache/rocketmq/example/ordermessage/Producer.java

Please assigned it to me, i want to try it.

Please assigned it to me, thanks!!

Please assigned it to me, i want to try it.

welcome, pls create a PR after you fix it.

fixed #5138.

Having reviewed the other code like this, I also found some issue like this, https://github.com/apache/rocketmq/blob/develop/example/src/main/java/org/apache/rocketmq/example/simple/AsyncProducer.java

Fixed all code in example package like this.

UnsupportedEncodingException should not be throw out in main function.

What is the rational behind this decision?


[Question] An error: 'LazySupervisedDataset' object has no attribute 'map'.

Question

When I downloaded the corresponding data and ran run/dpo_finetune.sh, this error occurred.

Yes, I solved it. But it's been so many months that I've forgotten how I solved it.
Can you try this version of trl to see if it can help you? trl==0.9.6

Or refer to this stic/dpo_trainer.py for training. Sorry brother, I can't remember

Or refer to this stic/dpo_trainer.py for training. Sorry brother, I can't remember

Wow, thanks! That's helpful. Thank you bro.


[FEATURE]  Users must request a JSON Web Token to authenticate with the API

As a user
I want to get a JSON Web Token from the API
So that I can make API calls to the API's endpoints
Scenario
Given: a user has registered with the API
And: they don't have a JWT yet
When: they send a POST request to /token
Then: the API sends an access and refresh token to the user
Scenario
Given: a user has not registered with the API
And: they don't have a JWT yet
When: they send a POST request to /token
Then: the API tells the user they need to register first
Feature completion checklist

[ ] Build feature
[ ] Make test calls to {endpoint}
[ ] Build supporting documentation for {feature}

If user hasn't signed up, API returns
{
    "detail": "No active account found with the given credentials"
}


add improvements playground, examples, components

remote the gettext in h1 for default and tailwind template layout.
change the hero component for the card component.
change the demo LiveView to use the card component.
split demo, card, and examples based on default or tailwind project
patch.
fix links to Template Syntax and Components Basics docs.
change the playground example.

default design

tailwind design

Testing the surface.init CLI with the options:
mix surface.init --catalogue --demo --tailwind
Changes not staged for commit:
  (use "git add/rm <file>..." to update what will be committed)
  (use "git restore <file>..." to discard changes in working directory)
	modified:   .formatter.exs
	modified:   .gitignore
	modified:   assets/css/app.css
	deleted:    assets/css/phoenix.css
	modified:   assets/js/app.js
	modified:   config/config.exs
	modified:   config/dev.exs
	modified:   lib/dummy_web.ex
	modified:   lib/dummy_web/router.ex
	modified:   mix.exs
	modified:   mix.lock

Untracked files:
  (use "git add <file>..." to include in what will be committed)
	assets/tailwind.config.js
	lib/dummy_web/components/
	lib/dummy_web/live/
	priv/catalogue/

mix surface.init --catalogue --demo --layouts
Changes not staged for commit:
  (use "git add/rm <file>..." to update what will be committed)
  (use "git restore <file>..." to discard changes in working directory)
	modified:   .formatter.exs
	modified:   .gitignore
	modified:   assets/css/app.css
	modified:   assets/js/app.js
	modified:   config/config.exs
	modified:   config/dev.exs
	modified:   lib/dummy_web.ex
	modified:   lib/dummy_web/router.ex
	deleted:    lib/dummy_web/templates/layout/app.html.heex
	deleted:    lib/dummy_web/templates/layout/live.html.heex
	deleted:    lib/dummy_web/templates/layout/root.html.heex
	deleted:    lib/dummy_web/templates/page/index.html.heex
	modified:   mix.exs

Untracked files:
  (use "git add <file>..." to include in what will be committed)
	lib/dummy_web/components/
	lib/dummy_web/live/
	lib/dummy_web/templates/layout/app.sface
	lib/dummy_web/templates/layout/live.sface
	lib/dummy_web/templates/layout/root.sface
	lib/dummy_web/templates/page/index.sface
	priv/catalogue/

mix surface.init --catalogue --demo --layouts --tailwind
Changes not staged for commit:
  (use "git add/rm <file>..." to update what will be committed)
  (use "git restore <file>..." to discard changes in working directory)
	modified:   .formatter.exs
	modified:   .gitignore
	modified:   assets/css/app.css
	deleted:    assets/css/phoenix.css
	modified:   assets/js/app.js
	modified:   config/config.exs
	modified:   config/dev.exs
	modified:   lib/dummy_web.ex
	modified:   lib/dummy_web/router.ex
	deleted:    lib/dummy_web/templates/layout/app.html.heex
	deleted:    lib/dummy_web/templates/layout/live.html.heex
	deleted:    lib/dummy_web/templates/layout/root.html.heex
	deleted:    lib/dummy_web/templates/page/index.html.heex
	modified:   mix.exs
	modified:   mix.lock

Untracked files:
  (use "git add <file>..." to include in what will be committed)
	assets/tailwind.config.js
	lib/dummy_web/components/
	lib/dummy_web/live/
	lib/dummy_web/templates/layout/app.sface
	lib/dummy_web/templates/layout/live.sface
	lib/dummy_web/templates/layout/root.sface
	lib/dummy_web/templates/page/index.sface
	priv/catalogue/

@herminiotorres thank you! ❤


Error on give/mob-drop of card

Describe the bug
A clear and concise description of what the bug is.
when attempting to give a card to myself, the chat displays:
[Cards]You have given player card: common bat
I'm sorry, but there was an error performing this command.

No card is received
To Reproduce
Steps to reproduce the behavior:
/cards give card common bat
Expected behavior
A clear and concise description of what you expected to happen.
receive the card
Error Logs
[15:03:34] [Server thread/ERROR]: [TradingCards] [ACF] Exception in command: cards give card common bat
[15:03:34] [Server thread/ERROR]: [TradingCards] [ACF] java.lang.NullPointerException: Cannot invoke "net.tinetwork.tradingcards.api.config.ColorSeries.getType()" because the return value of "net.tinetwork.tradingcards.tradingcardsplugin.config.settings.GeneralConfig.getColorSeries(String)" is null
[15:03:34] [Server thread/ERROR]: [TradingCards] [ACF]  at tradingcards-plugin-5.4.7-SNAPSHOT.jar//net.tinetwork.tradingcards.tradingcardsplugin.utils.CardUtil.formatLore(CardUtil.java:222)
[15:03:34] [Server thread/ERROR]: [TradingCards] [ACF]  at tradingcards-plugin-5.4.7-SNAPSHOT.jar//net.tinetwork.tradingcards.tradingcardsplugin.card.TradingCard.buildItem(TradingCard.java:26)
[15:03:34] [Server thread/ERROR]: [TradingCards] [ACF]  at tradingcards-plugin-5.4.7-SNAPSHOT.jar//net.tinetwork.tradingcards.api.card.Card.buildNBTItem(Card.java:165)
[15:03:34] [Server thread/ERROR]: [TradingCards] [ACF]  at tradingcards-plugin-5.4.7-SNAPSHOT.jar//net.tinetwork.tradingcards.api.card.Card.build(Card.java:185)
[15:03:34] [Server thread/ERROR]: [TradingCards] [ACF]  at tradingcards-plugin-5.4.7-SNAPSHOT.jar//net.tinetwork.tradingcards.tradingcardsplugin.commands.CardsCommand$GiveCommands.onGiveCard(CardsCommand.java:119)
[15:03:34] [Server thread/ERROR]: [TradingCards] [ACF]  at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[15:03:34] [Server thread/ERROR]: [TradingCards] [ACF]  at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
[15:03:34] [Server thread/ERROR]: [TradingCards] [ACF]  at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[15:03:34] [Server thread/ERROR]: [TradingCards] [ACF]  at java.base/java.lang.reflect.Method.invoke(Method.java:568)
[15:03:34] [Server thread/ERROR]: [TradingCards] [ACF]  at tradingcards-plugin-5.4.7-SNAPSHOT.jar//net.tinetwork.tradingcards.acf.RegisteredCommand.invoke(RegisteredCommand.java:152)
[15:03:34] [Server thread/ERROR]: [TradingCards] [ACF]  at tradingcards-plugin-5.4.7-SNAPSHOT.jar//net.tinetwork.tradingcards.acf.BaseCommand.executeCommand(BaseCommand.java:577)
[15:03:34] [Server thread/ERROR]: [TradingCards] [ACF]  at tradingcards-plugin-5.4.7-SNAPSHOT.jar//net.tinetwork.tradingcards.acf.BaseCommand.execute(BaseCommand.java:513)
[15:03:34] [Server thread/ERROR]: [TradingCards] [ACF]  at tradingcards-plugin-5.4.7-SNAPSHOT.jar//net.tinetwork.tradingcards.acf.RootCommand.execute(RootCommand.java:99)
[15:03:34] [Server thread/ERROR]: [TradingCards] [ACF]  at tradingcards-plugin-5.4.7-SNAPSHOT.jar//net.tinetwork.tradingcards.acf.BukkitRootCommand.execute(BukkitRootCommand.java:81)
[15:03:34] [Server thread/ERROR]: [TradingCards] [ACF]  at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:159)
[15:03:34] [Server thread/ERROR]: [TradingCards] [ACF]  at org.bukkit.craftbukkit.v1_18_R1.CraftServer.dispatchCommand(CraftServer.java:897)
[15:03:34] [Server thread/ERROR]: [TradingCards] [ACF]  at net.minecraft.server.network.PlayerConnection.a(PlayerConnection.java:2271)
[15:03:34] [Server thread/ERROR]: [TradingCards] [ACF]  at net.minecraft.server.network.PlayerConnection.a(PlayerConnection.java:2082)
[15:03:34] [Server thread/ERROR]: [TradingCards] [ACF]  at net.minecraft.server.network.PlayerConnection.a(PlayerConnection.java:2063)
[15:03:34] [Server thread/ERROR]: [TradingCards] [ACF]  at net.minecraft.network.protocol.game.PacketPlayInChat.a(PacketPlayInChat.java:46)
[15:03:34] [Server thread/ERROR]: [TradingCards] [ACF]  at net.minecraft.network.protocol.game.PacketPlayInChat.a(PacketPlayInChat.java:6)
[15:03:34] [Server thread/ERROR]: [TradingCards] [ACF]  at net.minecraft.network.protocol.PlayerConnectionUtils.lambda$ensureRunningOnSameThread$1(PlayerConnectionUtils.java:56)
[15:03:34] [Server thread/ERROR]: [TradingCards] [ACF]  at net.minecraft.server.TickTask.run(TickTask.java:18)
[15:03:34] [Server thread/ERROR]: [TradingCards] [ACF]  at net.minecraft.util.thread.IAsyncTaskHandler.c(IAsyncTaskHandler.java:149)
[15:03:34] [Server thread/ERROR]: [TradingCards] [ACF]  at net.minecraft.util.thread.IAsyncTaskHandlerReentrant.c(IAsyncTaskHandlerReentrant.java:23)
[15:03:34] [Server thread/ERROR]: [TradingCards] [ACF]  at net.minecraft.server.MinecraftServer.b(MinecraftServer.java:1413)
[15:03:34] [Server thread/ERROR]: [TradingCards] [ACF]  at net.minecraft.server.MinecraftServer.c(MinecraftServer.java:189)
[15:03:34] [Server thread/ERROR]: [TradingCards] [ACF]  at net.minecraft.util.thread.IAsyncTaskHandler.y(IAsyncTaskHandler.java:122)
[15:03:34] [Server thread/ERROR]: [TradingCards] [ACF]  at net.minecraft.server.MinecraftServer.bf(MinecraftServer.java:1391)
[15:03:34] [Server thread/ERROR]: [TradingCards] [ACF]  at net.minecraft.server.MinecraftServer.y(MinecraftServer.java:1384)
[15:03:34] [Server thread/ERROR]: [TradingCards] [ACF]  at net.minecraft.util.thread.IAsyncTaskHandler.c(IAsyncTaskHandler.java:132)
[15:03:34] [Server thread/ERROR]: [TradingCards] [ACF]  at net.minecraft.server.MinecraftServer.x(MinecraftServer.java:1362)
[15:03:34] [Server thread/ERROR]: [TradingCards] [ACF]  at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:1268)
[15:03:34] [Server thread/ERROR]: [TradingCards] [ACF]  at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:317)
[15:03:34] [Server thread/ERROR]: [TradingCards] [ACF]  at java.base/java.lang.Thread.run(Thread.java:833)

Server & Plugin Versions:

Server Version: 1.17.1 and 1.18.1
Minecraft: 1.18.1 or 1.17.1
TradingCards:  5.4.7-SNAPSHOT (on 1.18.1) and 5.4.6 (on 1.17.1)

Is this using the default setup?
Could you zip your tradingcards setting folder and send it here? (or send it to me on discord in a dm, sarhatabaot#0428)

It is using the settings that were auto-generated.  The first thing I tried was deleting the /plugins/TradingCards/ folder with all of it's contents and restarting the server so the plugin could regenerate them.
I'm pretty excited to migrate to your version, as you seem to be working in more features.  One thing I was hoping to check is if the decks are working for series.  In Xen's, if your current card series changes, then all cards in player decks will convert to the new series instead of remaining their original series.  You can see why this happens: Xen's decks.yml doesn't hold data on the series at all.

You can get a temporary fix via https://github.com/sarhatabaot/TradingCards/releases/tag/5.5.0-SNAPSHOT
I'll release a new version as soon as it's ready.

Amazing, I will test it out later today.  It looks like you also fixed the issue with decks changing the series?
If so, that's great.  I just completed a major overhaul of the resource pack to include new cards and a model for the deck books.

Tested the 5.0.0-SNAPSHOT today.  Apologies for the delay.  Cards do drop and the give command does work.  I noticed the old decks I had from Xen's weren't working, so I tried to give myself a new deck, however I was unable to use the "/deck 1" function, it returned the same "I'm sorry, but there was an error performing this command."
Similar, but different output in latest.log:
[11:30:40] [Server thread/ERROR]: [TradingCards] [ACF] Exception in command: deck 0
[11:30:40] [Server thread/ERROR]: [TradingCards] [ACF] java.lang.NullPointerException: Cannot invoke "org.bukkit.inventory.ItemStack.getType()" because "item" is null
[11:30:40] [Server thread/ERROR]: [TradingCards] [ACF]  at tradingcards-plugin-5.5.0-SNAPSHOT.jar//net.tinetwork.tradingcards.tradingcardsplugin.managers.TradingDeckManager.isDeck(TradingDeckManager.java:141)
[11:30:40] [Server thread/ERROR]: [TradingCards] [ACF]  at tradingcards-plugin-5.5.0-SNAPSHOT.jar//net.tinetwork.tradingcards.tradingcardsplugin.managers.TradingDeckManager.hasDeck(TradingDeckManager.java:160)
[11:30:40] [Server thread/ERROR]: [TradingCards] [ACF]  at tradingcards-plugin-5.5.0-SNAPSHOT.jar//net.tinetwork.tradingcards.tradingcardsplugin.commands.DeckCommand.dropDeckItem(DeckCommand.java:54)
[11:30:40] [Server thread/ERROR]: [TradingCards] [ACF]  at tradingcards-plugin-5.5.0-SNAPSHOT.jar//net.tinetwork.tradingcards.tradingcardsplugin.commands.DeckCommand.onGetDeck(DeckCommand.java:37)
[11:30:40] [Server thread/ERROR]: [TradingCards] [ACF]  at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[11:30:40] [Server thread/ERROR]: [TradingCards] [ACF]  at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
[11:30:40] [Server thread/ERROR]: [TradingCards] [ACF]  at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[11:30:40] [Server thread/ERROR]: [TradingCards] [ACF]  at java.base/java.lang.reflect.Method.invoke(Method.java:568)
[11:30:40] [Server thread/ERROR]: [TradingCards] [ACF]  at tradingcards-plugin-5.5.0-SNAPSHOT.jar//net.tinetwork.tradingcards.acf.RegisteredCommand.invoke(RegisteredCommand.java:152)
[11:30:40] [Server thread/ERROR]: [TradingCards] [ACF]  at tradingcards-plugin-5.5.0-SNAPSHOT.jar//net.tinetwork.tradingcards.acf.BaseCommand.executeCommand(BaseCommand.java:577)
[11:30:40] [Server thread/ERROR]: [TradingCards] [ACF]  at tradingcards-plugin-5.5.0-SNAPSHOT.jar//net.tinetwork.tradingcards.acf.BaseCommand.execute(BaseCommand.java:513)
[11:30:40] [Server thread/ERROR]: [TradingCards] [ACF]  at tradingcards-plugin-5.5.0-SNAPSHOT.jar//net.tinetwork.tradingcards.acf.RootCommand.execute(RootCommand.java:99)
[11:30:40] [Server thread/ERROR]: [TradingCards] [ACF]  at tradingcards-plugin-5.5.0-SNAPSHOT.jar//net.tinetwork.tradingcards.acf.BukkitRootCommand.execute(BukkitRootCommand.java:81)
[11:30:40] [Server thread/ERROR]: [TradingCards] [ACF]  at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:159)
[11:30:40] [Server thread/ERROR]: [TradingCards] [ACF]  at org.bukkit.craftbukkit.v1_17_R1.CraftServer.dispatchCommand(CraftServer.java:869)
[11:30:40] [Server thread/ERROR]: [TradingCards] [ACF]  at net.minecraft.server.network.PlayerConnection.handleCommand(PlayerConnection.java:2262)
[11:30:40] [Server thread/ERROR]: [TradingCards] [ACF]  at net.minecraft.server.network.PlayerConnection.a(PlayerConnection.java:2073)
[11:30:40] [Server thread/ERROR]: [TradingCards] [ACF]  at net.minecraft.server.network.PlayerConnection.a(PlayerConnection.java:2054)
[11:30:40] [Server thread/ERROR]: [TradingCards] [ACF]  at net.minecraft.network.protocol.game.PacketPlayInChat.a(PacketPlayInChat.java:46)
[11:30:40] [Server thread/ERROR]: [TradingCards] [ACF]  at net.minecraft.network.protocol.game.PacketPlayInChat.a(PacketPlayInChat.java:6)
[11:30:40] [Server thread/ERROR]: [TradingCards] [ACF]  at net.minecraft.network.protocol.PlayerConnectionUtils.lambda$ensureRunningOnSameThread$1(PlayerConnectionUtils.java:56)
[11:30:40] [Server thread/ERROR]: [TradingCards] [ACF]  at net.minecraft.server.TickTask.run(TickTask.java:18)
[11:30:40] [Server thread/ERROR]: [TradingCards] [ACF]  at net.minecraft.util.thread.IAsyncTaskHandler.executeTask(IAsyncTaskHandler.java:149)
[11:30:40] [Server thread/ERROR]: [TradingCards] [ACF]  at net.minecraft.util.thread.IAsyncTaskHandlerReentrant.executeTask(IAsyncTaskHandlerReentrant.java:23)
[11:30:40] [Server thread/ERROR]: [TradingCards] [ACF]  at net.minecraft.server.MinecraftServer.executeTask(MinecraftServer.java:1426)
[11:30:40] [Server thread/ERROR]: [TradingCards] [ACF]  at net.minecraft.server.MinecraftServer.executeTask(MinecraftServer.java:192)
[11:30:40] [Server thread/ERROR]: [TradingCards] [ACF]  at net.minecraft.util.thread.IAsyncTaskHandler.executeNext(IAsyncTaskHandler.java:122)
[11:30:40] [Server thread/ERROR]: [TradingCards] [ACF]  at net.minecraft.server.MinecraftServer.bf(MinecraftServer.java:1404)
[11:30:40] [Server thread/ERROR]: [TradingCards] [ACF]  at net.minecraft.server.MinecraftServer.executeNext(MinecraftServer.java:1397)
[11:30:40] [Server thread/ERROR]: [TradingCards] [ACF]  at net.minecraft.util.thread.IAsyncTaskHandler.awaitTasks(IAsyncTaskHandler.java:132)
[11:30:40] [Server thread/ERROR]: [TradingCards] [ACF]  at net.minecraft.server.MinecraftServer.sleepForTick(MinecraftServer.java:1375)
[11:30:40] [Server thread/ERROR]: [TradingCards] [ACF]  at net.minecraft.server.MinecraftServer.x(MinecraftServer.java:1286)
[11:30:40] [Server thread/ERROR]: [TradingCards] [ACF]  at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:319)
[11:30:40] [Server thread/ERROR]: [TradingCards] [ACF]  at java.base/java.lang.Thread.run(Thread.java:833)

To clarify, I am renaming the TradingCards folder to TradingCards.old before starting the server to test, so the items from Xen are simply the paper or book items with special names and lore that exist in my player inventory.


don't cache based on token if token doesn't determine the successful response

updated cachetools usage to no longer cache based on the token supplied for cases where the token doesn't affect the result in a successful case (some tokens may return different results if they are missing permissions but those won't be cached)

because the service token is used for these function calls, this pull request shouldn't make a difference


[Bug] bug in HSR gacha url parsing

Checklist

[X] My issue was not mentioned by others, and it is not a duplicate issue.

Description
Cant find the gacha url
Used .ps1 script from starrailstation and it outputted url in https://api-os-takumi.mihoyo.com/common/gacha_record/api/getGachaLog?..... format
But the existed regex is not the one that has problem

Reproduction Steps
click Update Records
Expected Behavior
No response
Screenshots

Starward Version
0.10.4
Windows Version
22635.2915
Log
[12:49:25.599] [INFO]
Welcome to Starward v0.10.4
System: Microsoft Windows NT 10.0.22635.0
Command Line: D:\Downloads\Starward_Portable_0.8.3_x64\app-0.10.4\Starward.dll playtime --biz hk4e_global --pid 3648

[12:49:25.657] [INFO] Starward.Services.DatabaseService
Database path is 'D:\Downloads\Starward_Portable_0.8.3_x64'

[12:49:25.690] [INFO] Starward.Services.DatabaseService
Database version is 7, target version is 7.

Additional Context
No response

Please click this button and try again.


[AutoPR] portal/resource-manager

Created to accumulate context: portal/resource-manager

(message created by the CI based on PR content)

Codecov Report

Merging #5017 into master will decrease coverage by 0.01%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #5017      +/-   ##
==========================================
- Coverage   49.16%   49.14%   -0.02%
==========================================
  Files        6456     6585     +129
  Lines      181146   184173    +3027
==========================================
+ Hits        89055    90513    +1458
- Misses      92091    93660    +1569

Impacted Files
Coverage Δ

azure-common/azure/profiles/__init__.py
82.81% <0%> (-3.86%)
:arrow_down:

...re/mgmt/storage/v2018_02_01/models/resource_py3.py
55.55% <0%> (ø)

.../mgmt/storage/v2018_07_01/models/cors_rules_py3.py
66.66% <0%> (ø)

..._account_check_name_availability_parameters_py3.py
75% <0%> (ø)

...e/v2018_02_01/models/service_sas_parameters_py3.py
20.83% <0%> (ø)

...t/storage/v2018_02_01/models/proxy_resource_py3.py
83.33% <0%> (ø)

...rage/v2018_07_01/models/storage_account_key_py3.py
100% <0%> (ø)

...2018_07_01/models/list_account_sas_response_py3.py
71.42% <0%> (ø)

...rage/v2018_02_01/models/list_container_item_py3.py
31.25% <0%> (ø)

...age/v2018_07_01/models/key_vault_properties_py3.py
50% <0%> (ø)

... and 121 more

Continue to review full report at Codecov.

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


improve: docker-compose conf for prod env

Please read this documentation.
I should create something for the dev and improve the prod environment.

Closed by #143


feat(button): add has background param

Need react part

Changelog React:

Add hasBackground prop to Button and IconButton
Deprecated ButtonEmphasis in favor of Emphasis (still exported for now)
Delete unecessary (and not very rigid) DropdownButton component (use Button and Dropdown instead)
Simplified Button and IconButton component

No more button variant
No more runtime props validation
Simplified prop interfaces

Corrections already tested by  @matmkian. I'm merging this PR


[BUG] parsedInput not being automatically typed

Are you using the latest version of this library?

[X] I verified that the issue exists in the latest next-safe-action release

Is there an existing issue for this?

[X] I have searched the existing issues and found nothing that matches

Describe the bug
I first want to thank you for open sourcing this library and I enjoy your Youtube video 👍
I've migrated from v6 to v7, so I'm using the latest version: ^7.0.2.
I vaguely remember that in v6, action(schema, async (field) => {...}) the field would get typed from the schema, but whatever reason, it stopped getting auto types (I have no clue why). So I decided to upgrade the package just for the heck of it.
But, even though I upgraded the package to the latests, it still doesn't get type autocomplete.
Reproduction steps
Here's my code just to test out.
import { z } from 'zod'
....
const test = actionClient.schema(z.object({username: z.string()})).action(async ({parsedInput}) => {
  // parsedInput is of type `any`
  const {username} = parsedInput
})

Expected behavior
I'm expecting the parsedInput to be of type whatever the schema is?
Minimal reproduction example
https://github.com/holahoon/nextjs-next-safe-action-test
Operating System
macOS
Library version
7.02
Next.js version
14.1.4
Additional context
No response

This should not happen, never happened to me and the library has tests that check for that before release. Can you please set up a minimal reproduction repo and then provide the link here? I need it to investigate the issue, otherwise it's impossible for me to help you just with this small code snippet.
By the way, never uploaded a video about next-safe-action on YouTube, but thanks for the kind words!

Thanks for the quick response!
https://github.com/holahoon/nextjs-next-safe-action-test
Just created a quick test repository to test it out. I'm using node v20.12.2 if this helps.
Not sure if there's anything I might be missing

I had the same problem and I noticed that it only occur when typescript is >= 5.5 , I guess these are some changes in upcoming ts that breaks the typing

@holahoon that's weird. I cloned your repo, installed dependencies, left the code untouched, and I get the correct type for parsedInput:

@kalvin807 The lastest stable TypeScript version is 5.4.5, maybe it's a 5.5 beta bug? Hope new internal TypeScript code won't break the library(/libraries) code. 🤦

I guess so, when I using javascript and typescript nightly extension, the typing fails to work

@kalvin807 I've just installed typescript@beta and I still get correct types. Maybe it was a nightly build bug?

By the way @holahoon, this is out of scope, but you should create a lib/safe-action.ts file where you export the action client, and then create the action file and put "use server"; at the start of it.

That's bizarre how you get the correct type 🤔 I boils down to maybe a problem in my local environment.
Alright. It definitely was the JavaScript and Typescript Nightly extension 🤦🏻 Downgraded to the below version and it solves.
Thanks for looking into this issue! @kalvin807 @TheEdoRan 👍


Animation on change

Thank you for this amazing plugin. Should not there be some animation while expanding the sheet?

Thank you for this amazing plugin. Should not there be some animation while expanding the sheet?

Yeah, i have plans for this in near future. Also the code contributions are welcomed.


RSDK-3131 - Auto reconnect + stream restart

Reconnect and repopulate streams for WebRTC connections.
Testing

Run teleop-elm example app
Open app in browser and confirm video feed works
Disable wifi and confirm that the video feed is frozen
Re-enable wifi and confirm a new working video feed has replaced the old frozen one after a few seconds

Added an opt-out flag in case this feature causes issues: https://github.com/viamrobotics/viam-typescript-sdk/pull/87/commits/b026738ece8ec064ef3857154c8200df4c04b5a5


[hotfix][doc] Chage link format in some docs

What is the purpose of the change
Change the link format to {% link ... %} in some docs.
Brief change log
Change the link format int some docs' directories. Please refer to the commits.
Verifying this change
This change is a trivial rework / code cleanup without any test coverage.
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): (yes / no)
The public API, i.e., is any changed class annotated with @Public(Evolving): (yes / no)
The serializers: (yes / no / don't know)
The runtime per-record code paths (performance sensitive): (yes / no / don't know)
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn/Mesos, ZooKeeper: (yes / no / don't know)
The S3 file system connector: (yes / no / don't know)

Documentation

Does this pull request introduce a new feature? (yes / no)
If yes, how is the feature documented? (not applicable / docs / JavaDocs / not documented)

Hi, @sjwiesman
I change the link format from {{ site.baseurl }}/.../xxx.html to {% link .../xxx.md %} in some doc directories.
The build_docs.sh can be executed without errors.
Please take a look.
Thanks~

Thank you for doing this, next time please open a Jira. Hotfixes are typically reserved for typos and other small changes.

Merged in master: b93f13d66874efc42ef04787a62322dac6962e21


semicolon in the dom

 This should not be here, also the nextjs poster image dosnt work

The semicolon does not exist on latest from what I can see, make sure you're on the latest version. It might also be in your own code so check for that too. The poster image not working in Next.js is being looked into separately.

[heart]         Omar Taheri < 145981 > reacted to your message:

From: Rahim Alwer @.>
Sent: Friday, June 7, 2024 2:10:59 PM
To: vidstack/player @.>
Cc: Omar Taheri < 145981 > @.>; Author @.>
Subject: Re: [vidstack/player] semicolon in the dom (Issue #1300)
The semicolon does not exist on latest from what I can see, make sure you're on the latest version. It might also be in your own code so check for that too. The poster image not working in Next.js is being looked into separately.
—
Reply to this email directly, view it on GitHubhttps://github.com/vidstack/player/issues/1300#issuecomment-2154929879, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AUVIXSS5V36L37AADPRRVADZGG5PHAVCNFSM6AAAAABI6KCXCWVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCNJUHEZDSOBXHE.
You are receiving this because you authored the thread.Message ID: @.***>


Bug 1187097 Download Anyway Addon Link

Added a "download anyway" link below the download firefox button for non-firefox users, and changed the "--" in the button to a single em dash. I can merge these into one commit if needed.
@magopian r?

Looks nice, thanks, and well done for the investigation and fix! Install buttons are a real pain to work with.
r+wc

Fixed in<PHONE_NUMBER>d5b9e459c803bd831732dec959dd69, thanks @FrancescoSTL !


TypeError: Cannot read properties of undefined (reading 'content')

Please provide us with the following information:

This issue is for a: (mark with an x)
- [ X] bug report -> please search issues before submitting
- [ ] feature request
- [ ] documentation issue or request
- [ ] regression (a behavior that used to work and stopped in a new release)

Minimal steps to reproduce

Send any messages in Ask or Chat.

Similar question to 814 but not same issue as that issue resulted in patch.  Checked code includes patch.
Any log messages given by the failure

2024_06_28_lw1sdlwk00005H_docker.txt
(1) In chat window: "TypeError: Cannot read properties of undefined (reading 'content')"
(2) In Log Stream '200 Not Found':
2024-06-28 16:21:14.425 +00:00 [Information] Microsoft.AspNetCore.Hosting.Diagnostics: Request finished HTTP/1.1 GET http://asbk-espc-gpt-dev-uks-001.azurewebsites.net/auth_setup - - - 200 457 application/json 743.1959ms
2024-06-28 16:21:14.490 +00:00 [Information] Microsoft.AspNetCore.Hosting.Diagnostics: Request starting HTTP/1.1 GET http://asbk-espc-gpt-dev-uks-001.azurewebsites.net/.auth/refresh - -
2024-06-28 16:21:14.491 +00:00 [Trace] Middleware: Request came in on normal port, sending to normal target http://<IP_ADDRESS>:8000/.auth/refresh
2024-06-28 16:21:14.491 +00:00 [Trace] Middleware: Forwarding request to http://<IP_ADDRESS>:8000/.auth/refresh
2024-06-28 16:21:14.649 +00:00 [Trace] Middleware: Forwarded request finished in 157.987ms 200 Not Found
2024-06-28 16:21:14.657 +00:00 [Debug] Microsoft.AspNetCore.Server.Kestrel.Connections: Connection id "0HN4NHAS3AMKT" completed keep alive response.
2024-06-28 16:21:14.657 +00:00 [Information] Microsoft.AspNetCore.Hosting.Diagnostics: Request finished HTTP/1.1 GET http://asbk-espc-gpt-dev-uks-001.azurewebsites.net/.auth/refresh - - - 404 207 text/html;+charset=utf-8 166.6094ms
2024-06-28 16:21:14.694 +00:00 [Information] Microsoft.AspNetCore.Hosting.Diagnostics: Request starting HTTP/1.1 GET http://asbk-espc-gpt-dev-uks-001.azurewebsites.net/config - -
2024-06-28 16:21:14.694 +00:00 [Trace] Middleware: Request came in on normal port, sending to normal target http://<IP_ADDRESS>:8000/config
2024-06-28 16:21:14.694 +00:00 [Trace] Middleware: Forwarding request to http://<IP_ADDRESS>:8000/config
2024-06-28 16:21:14.745 +00:00 [Trace] Middleware: Forwarded request finished in 50.606ms 200 OK
2024-06-28 16:21:14.745 +00:00 [Debug] Microsoft.AspNetCore.Server.Kestrel.Connections: Connection id "0HN4NHAS3AMKT" completed keep alive response.
2024-06-28 16:21:14.745 +00:00 [Information] Microsoft.AspNetCore.Hosting.Diagnostics: Request finished HTTP/1.1 GET http://asbk-espc-gpt-dev-uks-001.azurewebsites.net/config - - - 200 192 application/json 50.9678ms
Expected/desired behavior

Question submitted via app should return answer/expected response

OS and Version?

Windows Server 2022

azd version?

azd version 1.9.3 (commit e1624330dcc7dde440ecc1eda06aac40e68aa0a3)

Versions

Mention any other details that might be useful
I tried deploying without private endpoints, deleted everything then deployed with PE's.  Same issue.

Thanks! We'll be in touch soon.

@IainD925 - are you simply switching off the Semantic Ranker in the Dev Settings options in the UI?

@wknums Yes, exactly.
It feels like access is disabled but This MS Learn page states the free tier includes 1000 semantic ranker searches.  As a test I updated from free to standard  but it made no difference.

@IainD925 do you have the AZURE_OPENAI_API_KEY defined in your environment settings ?

@IainD925 do you have the AZURE_OPENAI_API_KEY defined in your environment settings ?

@wknums No, I don't have that key defined in the Web App env settings.

Doesn't help me but maybe others with similar error - support doc notes:

If the search service's SKU is not standard, then run azd env set AZURE_SEARCH_SERVICE_SKU {Name of SKU}. If you specify the free tier, then your app will no longer be able to use semantic ranker.

    "searchServiceSkuName": {
      "value": "${AZURE_SEARCH_SERVICE_SKU=standard}"
    },
...
    "searchServiceSemanticRankerLevel": {
      "value": "${AZURE_SEARCH_SEMANTIC_RANKER=free}"

@wknums Your error looks like a misconfiguration of your OpenAI connection, I suggest checking your environment variables.
@IainD925 I don't see an error in those logs corresponding to a bad /stream response, can you also check Application Insights Failures? I think it may have gone there instead.

Thanks @pamelafox however I have now torn down the environment and redeployed with Semantic Ranker option disabled & removed.  I'm not in a position to restore & test until much later.  The only error in Application Insights is currently a 404 on GET /robots933456.txt

Okay, that 404 is expected, as that robots file does not exist-
https://stackoverflow.com/questions/77921307/getting-a-404-for-get-robots933456-txt

Hi @wknums  and @IainD925 I am also facing this issue. But if I uncheck the semantic ranker for retrieval , sematic options. The application is working fine. I do not have a paid subscription of the semantic ranker, I am using the free one. If anyone of you solved this problem,kindly let me know.
Thanks in advance.

Hi @wknums and @pamelafox (for visibility of issue & closure) - I traced the issue as per Pamela's advice - app insights error log had clear message which when corrected, resolved the issue.

Invalid language value: 'en-GB'. Supported languages for speller are: en-US, de-DE, fr-FR, es-ES, nl-NL Parameter name: queryLanguage


[NETBEANS-1074] Module Review javascript2.knockout

The model files do not seem to support comments, do not contain any license; rat exclusion added. Filed NETBEANS-1155

Instead of adding a global rat exclude, other javascript modules were modified to contain a licenseinfo.xml file. This approach has the benefit, that the license situation is clear and a list of files can be created from that. See here:
https://github.com/apache/incubator-netbeans/pull/709/files
@junichi11 determined, that neighter .bowerrc, nor bower.json supported comments and so they can't hold that info, but with the info in the created licenseinfo.xml, a third party reviewer, can:
a) verify the license (see license/ref)
b) see the reason (comment/type)
when creating a rat report, files covered by licenseinfo.xml are excluded from the report and a summary is created as rat-appendix.txt, that gives a details report about these files.

Great. Squash and merging this.


Failure to build

Granted, I'm only using this project as a reference for setting up Spring Boot with Kotlin, but trying to do so, I get the following Gradle build failure:
FAILURE: Build failed with an exception.

* What went wrong:
A problem occurred configuring root project 'mixit'.
> Could not resolve all dependencies for configuration ':classpath'.
   > Could not resolve org.springframework.boot:spring-boot-gradle-plugin:2.0.0.BUILD-SNAPSHOT.
     Required by:
         project :
      > Could not resolve org.springframework.boot:spring-boot-gradle-plugin:2.0.0.BUILD-SNAPSHOT.
         > Could not parse POM https://repo.spring.io/snapshot/org/springframework/boot/spring-boot-gradle-plugin/2.0.0.BUILD-SNAPSHOT/spring-boot-gradle-plugin-2.0.0.BUILD-20170321.103103-476.pom
            > Could not resolve org.springframework.boot:spring-boot-tools:2.0.0.BUILD-SNAPSHOT.
               > Could not resolve org.springframework.boot:spring-boot-tools:2.0.0.BUILD-SNAPSHOT.
                  > Could not parse POM https://repo.spring.io/snapshot/org/springframework/boot/spring-boot-tools/2.0.0.BUILD-SNAPSHOT/spring-boot-tools-2.0.0.BUILD-20170321.103103-475.pom
                     > Could not resolve org.springframework.boot:spring-boot-parent:2.0.0.BUILD-SNAPSHOT.
                        > Could not resolve org.springframework.boot:spring-boot-parent:2.0.0.BUILD-SNAPSHOT.
                           > Could not parse POM https://repo.spring.io/snapshot/org/springframework/boot/spring-boot-parent/2.0.0.BUILD-SNAPSHOT/spring-boot-parent-2.0.0.BUILD-20170321.103103-476.pom
                              > Could not resolve org.springframework.boot:spring-boot-dependencies:2.0.0.BUILD-SNAPSHOT.
                                 > Could not resolve org.springframework.boot:spring-boot-dependencies:2.0.0.BUILD-SNAPSHOT.
                                    > Could not parse POM https://repo.spring.io/snapshot/org/springframework/boot/spring-boot-dependencies/2.0.0.BUILD-SNAPSHOT/spring-boot-dependencies-2.0.0.BUILD-20170321.103103-476.pom
                                       > Could not find org.springframework.integration:spring-integration-bom:5.0.0.BUILD-SNAPSHOT.
                                         Searched in the following locations:
                                             https://repo1.maven.org/maven2/org/springframework/integration/spring-integration-bom/5.0.0.BUILD-SNAPSHOT/maven-metadata.xml
                                             https://repo1.maven.org/maven2/org/springframework/integration/spring-integration-bom/5.0.0.BUILD-SNAPSHOT/spring-integration-bom-5.0.0.BUILD-SNAPSHOT.pom
                                             https://repo1.maven.org/maven2/org/springframework/integration/spring-integration-bom/5.0.0.BUILD-SNAPSHOT/spring-integration-bom-5.0.0.BUILD-SNAPSHOT.jar
                                             https://plugins.gradle.org/m2/org/springframework/integration/spring-integration-bom/5.0.0.BUILD-SNAPSHOT/maven-metadata.xml
                                             https://plugins.gradle.org/m2/org/springframework/integration/spring-integration-bom/5.0.0.BUILD-SNAPSHOT/spring-integration-bom-5.0.0.BUILD-SNAPSHOT.pom
                                             https://plugins.gradle.org/m2/org/springframework/integration/spring-integration-bom/5.0.0.BUILD-SNAPSHOT/spring-integration-bom-5.0.0.BUILD-SNAPSHOT.jar
                                             https://repo.spring.io/snapshot/org/springframework/integration/spring-integration-bom/5.0.0.BUILD-SNAPSHOT/maven-metadata.xml
                                             https://repo.spring.io/snapshot/org/springframework/integration/spring-integration-bom/5.0.0.BUILD-SNAPSHOT/spring-integration-bom-5.0.0.BUILD-SNAPSHOT.pom
                                             https://repo.spring.io/snapshot/org/springframework/integration/spring-integration-bom/5.0.0.BUILD-SNAPSHOT/spring-integration-bom-5.0.0.BUILD-SNAPSHOT.jar
                                             https://repo.spring.io/milestone/org/springframework/integration/spring-integration-bom/5.0.0.BUILD-SNAPSHOT/maven-metadata.xml
                                             https://repo.spring.io/milestone/org/springframework/integration/spring-integration-bom/5.0.0.BUILD-SNAPSHOT/spring-integration-bom-5.0.0.BUILD-SNAPSHOT.pom
                                             https://repo.spring.io/milestone/org/springframework/integration/spring-integration-bom/5.0.0.BUILD-SNAPSHOT/spring-integration-bom-5.0.0.BUILD-SNAPSHOT.jar

I.e., the transitive dependency spring-integration-bom fails to resolve.  And manually checking various repositories, there doesn't seem to be a 5.0.0.BUILD-SNAPSHOT version of this, indeed.

OK, the packages in questions have just (re)appeared and with that, things work as expected. :-)


Try npm ci in Chromatic

@garrettmflynn Hoping this 'just works'

Everything registered as slightly translated—but it built correctly! (Build 49)


Setting to disable self-referenced links

Implemented functionality to disable links which reference the current domain itself.
Tries to tackle issue #120 partially.
TODO: Extend to ship with a blacklist

I thought about it a bit, maybe we could make things way simpler, by just letting people input websites in a comma separated list rather than hardcoding domains and having a switch for each one, what do you think of this ?

The only problem with the switches is that it'll call for too many additional switches.
Letting people input a list and add to it domain filtering, and it'll probably work out well. Just thinking about where this input would be located. In the small popup it could be a bit irritating to type.

We might want to move all of the global settings to a settings page which would make things easier I think

Hey! seems like you did the needful. Thanks, I just came into a ton of work, so have been busy.


Update Add-TeamViewerManager.ps1

included adding UserGroups as manager.

In der Not frißt der Teufel Fliegen! :-P
Where does the Update-MarkdownHelp cmdlet come from?
Is it updating the docs automatically? I just added one parameter. Shouldn't I just add it manually?

In der Not frißt der Teufel Fliegen. ;-P
Ok, updated.

lgtm (but I can't merge anylonger). @koutsop

Hi @danieljoos,
Unfortunately, I don't have write access, thus I cannot approve and run the workflow.  @ChristianJ-TV do you may have write access?

@koutsop You and @ChristianJ-TV have write access now :-)

I added the Remove-TeamViewerUser function. Function, Test and Help .md are based on Remove-TeamViewerGroup.

To me the Remove-TeamViewerUser should go into its own PR.


Game Model Revamp

It's time to add logic to the Game model for:

[x] game type / hammer order (palms, normal, doubles, singles)
[x] number of frames
[x] allow ties
[ ] switch color after x frames

In the past, we had this scattered around the views and controllers, as this was only used for the live score overlays.
We will need to update views and controllers for the new format. Bonus points if we can simplify the structure of the live score overlay views' css while we are at it.

@aaronpolitsky @trevorghess any thoughts on the direction here?

Closing WIP PR/branch for a cleaner one


Use Anchor redirect component

When https://github.com/prisma/docs/issues/1648 is implemented, the following redirects could be added:

The 2 links above do not redirect but are still on the old pages with anchor where the content is not actually present.

@janpio Adding it to the redirects array in config.ts will work. Just like shown in the PR

@janpio Okay, so to confirm - It would be a hidden component just to make sure we have redirects in the same place as the original link used to be, right?

That is how I understand https://github.com/prisma/docs/issues/1648, yes.
This issue here is just about using that component to make sure certain redirects are then implemented via that mechanism.

@meletj to see if this is relevant

@nilubava for this one, can you please review the PR I created which fixes the two links Jan had mentioned. https://github.com/prisma/docs/pull/5091
Please also document how to use the redirect component from anchor to full page. As per #1648 and https://github.com/prisma/docs/pull/2954

I don't think this works, you can only point to anchors, but not react to certain anchors: https://prisma-company.slack.com/archives/C06F2DJ49K6/p1713980036600259?thread_ts=1713979210.690349&cid=C06F2DJ49K6

Maybe I misunderstood this issue. It sounds different than the request on Slack, which is about defining custom anchors. I'll leave this one as closed as Jon will have a new one up that matches the latest conversation. Hope that's ok.

Yep, ignore me. I didn't actually read the full issue, just the title - which was bad. I think the ones here are properly covered.


[Event Request] Codeunit 5720 "Item Reference Management" - OnEnterSalesItemReferenceOnAfterCalcShouldAssignDescription

Describe the request
I want to handle whether the global item ref. description is assigned to the sales line. Therefore, I request the following event:
procedure EnterSalesItemReference(var SalesLine2: Record "Sales Line")
var
	IsHandled: Boolean;
	//NEW BEGIN
	ShouldAssignDescription: Boolean;
	//NEW END
begin
	IsHandled := false;
	OnBeforeEnterSalesItemReference(SalesLine2, GlobalItemReference, Found, IsHandled);
	if IsHandled then
		exit;

	if SalesLine2.Type = SalesLine2.Type::Item then begin
		FindItemReferenceForSalesLine(SalesLine2);

		if Found then begin
			SalesLine2."Item Reference No." := GlobalItemReference."Reference No.";
			SalesLine2."Item Reference Unit of Measure" := GlobalItemReference."Unit of Measure";
			SalesLine2."Item Reference Type" := GlobalItemReference."Reference Type";
			//NEW BEGIN
			ShouldAssignDescription := GlobalItemReference.Description <> '';
			OnEnterSalesItemReferenceOnAfterCalcShouldAssignDescription(SalesLine2, GlobalItemReference, ShouldAssignDescription);
			if ShouldAssignDescription then begin
			//NEW END
				SalesLine2.Description := GlobalItemReference.Description;
				SalesLine2."Description 2" := GlobalItemReference."Description 2";
			end;
			SalesLine2."Item Reference Type No." := GlobalItemReference."Reference Type No.";
			OnAfterSalesItemReferenceFound(SalesLine2, GlobalItemReference);
		end else begin
			//...
end;

[IntegrationEvent(false, false)]
local procedure OnEnterSalesItemReferenceOnAfterCalcShouldAssignDescription(var SalesLine: Record "Sales Line"; ItemReference: Record "Item Reference"; var ShouldAssignDescription: Boolean)
begin
end;

Additional context
I need the OnEnterPurchaseItemReferenceOnAfterCalcShouldAssignDescription for the Sales Item function, to handle whether the Global Item Ref. description should be assigned or not.
Internal work item: AB#544567

To be more flexible, variable SalesLineBeforeChanges added to existing events. So, Descriptions can be restored using it.

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.
Build ID: 23752.


Pwsh suggest does not automatically appear when - is typed on macOS

Testing: #210394, #154662
Repro:

Enable terminal.integrated.shellIntegration.suggestEnabled
Open a pwsh terminal
Type Get-, 🐛 no intellisense shows up
Press ctrl+space, it does show up

cc @cpendery

"\u001b[1;44R" is printed after every input which causes the suggest widget to hide.


UI redesign

The web UI feels a bit dated,  perhaps now might be a good time to look to the community for designers interested in refreshing the look.
May be best to sit until #38 is completed

---
Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/31328415-ui-redesign?utm_campaign=plugin&utm_content=tracker%2F345420&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F345420&utm_medium=issues&utm_source=github).

What UI style are you thinking? Use Bootstrap or Foundation frameworks?
I would love to help

@Hippyjake showbot uses Sass + Bourbon, although looking through the styles, we did rip some bootstrap headers styles.
Mian stylesheet if you're curious:
https://github.com/rikai/Showbot/blob/master/sass/showbot.scss

I am completely open to any ideas and suggestions you folks might have.
I don't have anything specific in mind and i'm not a UI designer. I'm more of a "show me what you've got in mind and i'll let you know if you're going in a good direction" kind of guy,
I find that people are often better at large-scale UI design concepts than i am and that my useful suggestions come in at the changing individual elements stage, so to anyone that's reading this, feel free to create any sort of mockups you think might look nice and i'll happily give feedback! :+1:

@Hippyjake Any thoughts?

Ill have to make a foundation mockup. ill have to have a closer look at the "html" and see if I can make the changes my self. @rikai off hand, do the suggestions get stuck in a table or list?

@Hippyjake We're going to be doing a lot of work to improve the web side of things later today if you'd care to join us.
Can always contact us via IRC over @ irc.geekshed.net in #jbdev

@Hippyjake I think @eriknelson and yourself would make a good pair team on this.
He's our resident smart backend web kinda guy, so i think you guys could come up with some really awesome stuff.
I'm going to tentatively assign this issue to both of you just so i can keep easy track of things. :+1:

I'll make a small PR or something. Thanks @rikai!

No worries, @eriknelson has been chomping at the bit to rewrite the web code, so if that means more freedom in the design of the new UI, it's something i'll happily approve. :tada:

http://i.imgur.com/o0H6oru.png Quick update on the new paint


Unity Android/Windows

I am right now trying to create an application that is basically a Unity Android remote talking to a Unity PC application via Bluetooth.
It is a first sketch as we actually only need a few buttons on the Android side to trigger certain actions on the PC side.
At first I built all of this successfully with a WiFi connection and then tried to convert it to a Bluetooth connection.
I found your library and integrated it and am stuck now, because of the socket problem you describe on your blog. I was so glad you already addressed that problem and I downloaded the new libs.
Now I am a bit at a loss because the library and its classes seem to be a lot different.
I originally created my applications with a BluetoothListener and a BluetoothClient. Both seem not to be present anymore in the library.
Maybe you have a small sample project you could provide where one can see how it works now? I was so happy when I saw you addressed the Unity issue and I think I am so close with my app.
I would be really thankful for some help.

Could you explain how you got the libraries into Unity in the first place? I tried using nuget on my Unity project sln and got a
The project does not support adding package references through the add package command.
error message.
Opening the solutions included in this git on Visual Studio 2017 also yields a bunch of errors on as it tries to update the solution to the latest version.

You can import DLLs in Unity, no problem. I downloaded the package and put the DLLs directly into the Unity project, into the Assets in Unity.
https://docs.unity3d.com/Manual/UsingDLL.html
I have worked with libraries in the past, also with Windows and Android libraries in one project. Unity is pretty well setup and it works.
But I got the socket error and with the new version...I have no idea ow to use it.

The dll in the net35 folder has the workaround for Sockets. I'm looking at integrating two APIs so there is both the old Sockets API and the newer API which supports BT Classic and BTLE in the same dll.

@peterfoot
Yes I used that dll, after I read about the problem on your blog. I just wrote my code like the samples suggested and this doesn't work anymore. So thank you for looking into that. I am really curious if the Unity stuff will work

I ended up putting the dll from the net35 folder into Unity so I'm able to use InTheHand.Devices.Bluetooth now. However, some of the examples I found using feet32 require InTheHand.Net.Sockets which I think you described in your blog about it not currently working inside unity. Where can I find sample code for Unity that only uses InTheHand.Devices.Bluetooth? I don't seem to see anything resembling that in the samples folder.

Using the dll from the net35 folder, I fail to get devices using:
var devices = DeviceInformation.FindAll(RfcommDeviceService.GetDeviceSelector(RfcommServiceId.SerialPort));
The RfcommDeviceService.GetDeviceSelector(RfcommServiceId.SerialPort) portion sees my bluetooth device but the FindAll returns an empty list. Also FindAllAsync is not wrapped into this DLL as well so I haven't tried that one either.

I would greatly appreciate some more information on how to use InTheHand.Devies.Bluetooth as well. I am trying to simply discover bluetooth devices as a way "hello world".

@SteenPetersen, what I eventually did was setup my arduino device to use serial communication. Then on PC I used this serial comm asset ardity https://assetstore.unity.com/packages/tools/integration/ardity-arduino-unity-communication-made-easy-123819. You have to first pair the BT device using Windows add BT device. After that go to device manager to get the COM port. This is what you will use in ardity to connect to and communicate. You can also get all com ports through code and use a strategy to discover which one is yours.

For some reason I thought this was for unity, anyway I believe ardity should still work outside unity. It's a c# project. You just need to figure out how to use it without the ui part.

Thanks, I’ll look into it. Getting some sensors soon that I need to make communicate with unity android builds. Trying to figure out how to go about it.

@SteenPetersen , Note that Ardity is for PC serial communictaion using unity. For Android/iOS asset e.g https://assetstore.unity.com/packages/tools/input-management/android-microcontrollers-bluetooth-16467
Also note that your sensor has a tutorial that you can download from here: https://drive.google.com/file/d/1Y3Hs8RiAHhglAU0FOO9UwfwT7eForKgA/view
They even have code samples too though not from unity.


panic: In WASM I panicked with an entity not found (probably something with parent/child)

panicked at /home/runner/.cargo/registry/src/index.crates.io-6f17d22bba15001f/bevy_hierarchy-0.12.1/src/child_builder.rs:202:15:
Entity 3498v19 does not exist
Stack:
Error
at imports.wbg.__wbg_new_abda76e883ba8a5f (https://html-classic.itch.zone/html/10854025-1022367/bevy_game.js:540:21)
at lost_oppai-1f37af638014e1a3.wasm.console_error_panic_hook::hook::h66531164739a6435 (https://html-classic.itch.zone/html/10854025-1022367/bevy_game_bg.wasm:wasm-function[4381]:0x752f37)
at lost_oppai-1f37af638014e1a3.wasm.std::panicking::rust_panic_with_hook::h6731baa78621a747 (https://html-classic.itch.zone/html/10854025-1022367/bevy_game_bg.wasm:wasm-function[13315]:0xa393cb)
at lost_oppai-1f37af638014e1a3.wasm.std::panicking::begin_panic_handler::{{closure}}::hb6cd8464ed39ae71 (https://html-classic.itch.zone/html/10854025-1022367/bevy_game_bg.wasm:wasm-function[15370]:0xa9d96f)
at lost_oppai-1f37af638014e1a3.wasm.std::sys_common::backtrace::__rust_end_short_backtrace::hbdf3ddeb21a1e747 (https://html-classic.itch.zone/html/10854025-1022367/bevy_game_bg.wasm:wasm-function[70208]:0xe0c124)
at lost_oppai-1f37af638014e1a3.wasm.rust_begin_unwind (https://html-classic.itch.zone/html/10854025-1022367/bevy_game_bg.wasm:wasm-function[36445]:0xd104cd)
at lost_oppai-1f37af638014e1a3.wasm.core::panicking::panic_fmt::h5c7ce52813e94bcd (https://html-classic.itch.zone/html/10854025-1022367/bevy_game_bg.wasm:wasm-function[37357]:0xd1ed56)
at lost_oppai-1f37af638014e1a3.wasm.bevy_ecs::world::World::entity_mut::panic_no_entity::hd93190311f673d06 (https://html-classic.itch.zone/html/10854025-1022367/bevy_game_bg.wasm:wasm-function[30711]:0xca0ff4)
at lost_oppai-1f37af638014e1a3.wasm.bevy_ecs::world::World::entity_mut::h19773dc29285ea67.2687 (https://html-classic.itch.zone/html/10854025-1022367/bevy_game_bg.wasm:wasm-function[21031]:0xb85a46)
at lost_oppai-1f37af638014e1a3.wasm.core::ops::function::FnOnce::call_once::hf076b0d4cb0ae663 (https://html-classic.itch.zone/html/10854025-1022367/bevy_game_bg.wasm:wasm-function[1517]:0x4db5d7)

  | imports.wbg.__wbg_error_f851667af71bcfc6 | @ | bevy_game.js:556
-- | -- | -- | --

I will close this as I have not encountered this ever since the fix. I also had somebody playtest on WASM for a good 30min+ and it went pretty smooth.


difference between this and craftingrecipes

What seems to be the difference between this and craftingrecipes?  Is this one the one that holds the recipe and the other is used to craft...  Or something like that.

This seems to be a top levep api that breaks out from crafting recipes,why not just put them together

They used to be but now craftingrecipes is standalone, and voxel-recipes is a plugin that provides a crafting recipe list plus also a smelting recipe map, could also provide other (non-crafting) recipe types in the future

ok, so then whats crafting recipe used for? Or is it still used in voxelmetaverse?

https://github.com/deathcap/craftingrecipes has all the logic for crafting, this module "voxel-recipes" is merely a voxel-plugin to act as a centralized recipe list, for both crafting recipes (registerAmorphous, registerPositional, craft) and smelting recipes (regsiterSmelting, smelt). They're separated since craftingrecipes is not dependent on voxel.js, and can be used independently (the unit test is all command-line) without voxel.js or voxel-plugins.

https://github.com/deathcap/craftingrecipes has all the logic for crafting, this module "voxel-recipes" is merely a voxel-plugin to act as a centralized recipe list, for both crafting recipes (registerAmorphous, registerPositional, craft) and smelting recipes (regsiterSmelting, smelt). They're separated since craftingrecipes is not dependent on voxel.js, and can be used independently (the unit test is all command-line) without voxel.js or voxel-plugins.


Elections page

Pivotal Card
Connects the election page to information from pg. Branches from PR #238.

Excellent. LGTM.