text:
关于更新weights的问题

老师请问在mlp中当我们往回更新weights的时候，比如我们每个batch有200个数据，那我们比如最后一层隐藏层是128个神经元，然后200个数据，就是200128。 最后output层是10个神经元，那最后一层就是20010的数据。那么我们更新weights的时候就是点成128 * 200 和 200 * 10。 请问老师这样我们每个weight都是200个数据相加，最后不需要再除以200吗？

if the network is 100(l0)->128(l1)->10(l2)
l1 = zeros(200, 128) # each data point get a 128-length vector
W*l0
for n in 1~200:
for i in 128:
for j in  100:
l1[n,i] = l1[n,i]+W[i,j]*l0[n,j]
同理l2， 这样我们就得到 l2是一个[200,10]的矩阵。 同理如果我们每个batch里面有147个data point 那就是l2是一个[147,10]的矩阵


text:
I just received a payment of 180€ which is not showing up in my wallet

How can I see my Wallet saldo in the explorer.bitcoin.com???
Your Android Wallet is messing things up, I have just received a payment of 180€ which is showing as sent on the wallet of the IPhone which was sending the transaction but it does not appear in my transaction list.
It has been about one hour now since we did the transaction and I re-started my device and now i did an App Update of your wallet, can you please tell me how can I access my history on a blockexplorer like explorer.bitcoin.com!??!?

This bug has been fixed, no need to update the app. Please let us know if you encounter it again, and thanks for reporting.

source: gharchive/issue

authors: alfonsofy theRealBitcoinClub

repo: Bitcoin-com/Wallet

license: mit

license_type: permissive

license_source: bigquery


text:
Print Extra Page for "Stray" TPRs that are not set to the correct days.

Somethings people do not set Temporary Price Reductions to end on a Saturday and they fall off TPR without us knowing.  This causes inaccurate pricing and leads to unhappy customers.  We need to add logic to automatically search for 28 days from the current day for any TPRs that do not end on a Saturday and create an extra page to display that.

Solved issue by adding logic to search for TPR's that are active and not assigned to the proper day of the week.  This allows the user to catch more pricing errors before they happen.

license: MIT

license_source: github-api


text:
Made bower.json->license compatible with bower.json-spec

(https://github.com/bower/bower.json-spec, using a SPDX license identifier)
I did this because http://www.webjars.org/bower requires a valid license identifier

Changing this for now, but the license will change to MIT soon.

source: gharchive/pull-request

authors: davidtmiller nymanjens


text:
日志打印边框格式问题

边框不能对齐，之前用Alog也是这样，是我ide设置的问题？

json也无法格式化，这是为什么...

这是我的json
{"data":[],"message":"获取购物车商品信息成功！","status":"200","sign":"a439b9d09393328ae929921b7da1c197"}

边框不能对齐的原因找到了 是因为我logcat开启了换行

楼上正解，不要选中它就可以

@Blankj  大佬，我的在okhttp interceptor里log返回的json，为什么不能格式化？

authors: fansangg liyujiang-gzu

repo: Blankj/AndroidUtilCode


text:
shield_max, energy_max, and weapon_cooldown are always zero (for replays)

I am looking a replay as observer (player_id = 0). During onStep() is called, I read the following values of all units:

health
health_max
shield
shield_max
energy
energy_max
weapon_cooldown

For the replayes I watched the values shield_max, energy_max, and weapon_cooldown are always zero. Although shield and energy are not always zero. Is this a bug related to replays or observers? Can you fix it?

I just tested this and I'm not seeing the same issue.
Could you possible provide code to reproduce the issue?

Here is a minimal example. Maybe the problem is specific to the replay I used...
#include <sc2api/sc2_api.h>
#include <iostream>

class MyObserver : public sc2::ReplayObserver {
public:
	bool firstShield = true;
	bool firstEnergy = true;

	void OnStep() final {
		auto obs = Observation();
		for (auto it : obs->GetUnits()) {
			if (firstShield && (it->shield > 0) && (it->shield_max == 0)) {
				std::cout << obs->GetGameLoop() << ": Found invalid shield values!" << std::endl;
				firstShield = false;
			}
			if (firstEnergy && (it->energy > 0) && (it->energy_max == 0)) {
				std::cout << obs->GetGameLoop() << ": Found invalid energy values!" << std::endl;
				firstEnergy = false;
			}
		}
	}

	bool IgnoreReplay(const sc2::ReplayInfo& replay_info, uint32_t& player_id) final {
		player_id = 0;
		return false;
	}
};

int main(int argc, char* argv[]) {
	sc2::Coordinator coordinator;
	coordinator.LoadSettings(argc, argv);

	const char* kReplayFolder = R"(D:\path\to\replaypack1\0b5f25278d983edbe980a6ea723de75d281b90b21a2ac60286091ffcec9a5fb3.SC2Replay)";
	if (!coordinator.SetReplayPath(kReplayFolder)) {
		std::cout << "Unable to find replay." << std::endl;
		return 1;
	}

	MyObserver myObserver;
	coordinator.AddReplayObserver(&myObserver);

	while (coordinator.Update());
	return 0;
}

If I compile and run the program, I get the following output:

...
1: Found invalid shield values!
2985: Found invalid energy values!

Thanks for your help. I start to have the bad feeling that the problem is in front of my computer ;)

authors: AnthonyBrunasso LordBlackhawk


text:
[suggestion] support for  Liquid to liquid  transformation in barrels

I tried to add a recipe in the FluidBlockTransformerRegistry file to transform an existing fluid in a barrel into another fluid by adding an item or block from my inventory and it's not working , instead of giving the fluid it just gives the missing texture , and I cant interact with the contents of the barrel once it's transformed.

I have a fork where I've added this ability added using json of the form:
[
  {
    "inputFluid": "water",
    "reactant": {"name": "minecraft:redstone", "meta": 0},
    "output": "witchwater"
  }
]

If BloodWorkXGaming wants I can make a pull request.

Ye sure, can't hurt, thank you ^^ will merge it together with the other PR
soon then.
On So., 17. Sep. 2017, 07:03 SirLyle notifications@github.com wrote:

I have a fork where I've added this ability added using json of the form:
[
{
"inputFluid": "water",
"reactant": {"name": "minecraft:redstone", "meta": 0},
"output": "witchwater"
}
]
If BloodWorkXGaming wants I can make a pull request.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/BloodWorkXGaming/ExNihiloCreatio/issues/29#issuecomment-330021670,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AHwpZircyotSlT1fMT1GvAQp1L4PS2_Kks5sjKgngaJpZM4PaAps
.

My existing pull request now has the FluidItemFluid recipe type (I was already working on the same base).

This now exists as well thanks to @SirLyle !

authors: BloodWorkXGaming SirLyle majijn

repo: BloodWorkXGaming/ExNihiloCreatio


text:
Animations and autoclear not triggering

Please note this can also be caused by a lack of documentation from your side, respectively understanding of Ember CLI internals from mine.
Everything works fine in my project regarding the notifications, except they are not animated and the autohide feature doesn't work at all. Font Awesome is working.
This could be caused by missing bits in the Brocfile.js, which would make it my fault. I'd be happy to know which is the correct (and complete) way to do it, then I promise a PR with a README update :wink:

Just a quick update: under Firefox everything seems fine, the problem persists with Chrome/Chromium. Still don't know if it's a Chrome problem or, more generally, a Webkit one.

@nightsh Try out the new version I just published (1.1.4) and let me know if that fixes your animation issues.

Just tried with 1.1.4, still not animated. Anything I can help you with? You can see what I have done in the project's repository.

@nightsh We've just changes some internals on how CSS is processed, can you try it again and let us know if you have any luck.
If that doesn't work we will probably have to work on coming up with a basic test example of an app that has the same issues you're experiencing so we can get to the bottom of this :+1:

@mansona Not happening, sorry. I'll try to build a minimal working example of the fail today, in the meantime you can have a look at the project's package.json and the related files, maybe I'm missing something.

@nightsh Did you try the new version? We bumped the package to 1.2.0 yesterday.

@ynnoj yes, I tried with 1.2.0 right now. Consider the actual package.json, but with the 1.2.0 version of ember-cli-notifications.

Oh wait, the project you're working on is open source (or at least public). If I just run that repo without any backend would I be able to trigger the offending notification? If you could put a test button somewhere on the page I could test it in situ, i.e. no need to create a separate test example

@mansona Updated + added test button. See the frontend develop branch.

@ynnoj got as far as this working on @nightsh's repo (with a bit of difficulty because of node-sass and io.js) but I got this error for the notification:
https://cloudup.com/cu2fTzWFqnV
Is it missing auto-prefixer or something?

#28 should fix the prefix issues.

Hi @nightsh I have verified that version 1.2.1 does indeed fix the issues you were having :+1:

authors: mansona nightsh ynnoj

repo: Blooie/ember-cli-notifications


text:
🛑 BloxTech Dashboard is down

In 04c866b, BloxTech Dashboard (https://bloxtech.tech/admin) was down:

HTTP code: 0
Response time: 0 ms

Resolved: BloxTech Dashboard is back up in f36fa5b.

repo: BloxTechGroup/status


text:
Segment radii are inconsistnet between the 'fst' and the ezy modules.

I noticed a peculiar inconsistency between radii of the fst module and the ezy module. However, since segment_radii is not available in the fst module, it is not possible to test it with the same function. Here is a (not so proper) example for this:
from neurom import ezy
from neurom import fst
import numpy as np

n = ezy.load_neuron('./test_data/neurolucida/sample.asc')
n1 = fst.load_neuron('./test_data/neurolucida/sample.asc')

Note that those cells have only one axon.
for itr, tr in enumerate(n.neurites):
    print itr, tr.type
   ....:
0 NeuriteType.axon
1 NeuriteType.basal_dendrite
2 NeuriteType.basal_dendrite
3 NeuriteType.apical_dendrite

for itr, tr in enumerate(n1.neurites):
    print itr, tr.type
   ....:
0 NeuriteType.axon
1 NeuriteType.basal_dendrite
2 NeuriteType.basal_dendrite
3 NeuriteType.apical_dendrite

Then by computing the radii of the segments I cannot match the axon initial section:
# Get the fst-neuron axon
tr1 = n1.neurites[0]
# Confirm that this is the axon once again
tr1.type
Out: <NeuriteType.axon: 3>

# Initial section of the fst-tree
np.transpose(tr1.value)[3] # hack to get the radii of the first section
Out:
array([ 0.85351288,  0.72855526,  0.54222909,  0.15834133,  0.74971031,
        0.42103903,  0.18778701,  0.23702312,  0.64729631,  0.30823704,
        0.79074297])

# Initial section of the ezy-tree
ezy.get('segment_radii', n, neurite_type=ezy.NeuriteType.axon)[:11]
Out:
array([ 0.79103407,  0.63539217,  0.35028521,  0.45402582,  0.58537467,
        0.30441302,  0.21240506,  0.44215972,  0.47776668,  0.54949001,
        0.80588855])

It seems like something is wrong, but it is not possible to track this down without the same functionality available for the two types of neurons.

Sorry, this is too confusing. I can't figure out what problem you're reporting here. What quantity are you trying to compare?

Yes, sorry about this. I think once we have the segment_radii for the fst module it will be easier to compare them.
I want to extract the distribution of segment radii. In the ezy module it is easy, since I can extract them from the NEURITEFEATURES. In the fst module there is not trivila way to do so. If you can propose one I will run the same analysis to compare the radii in the ezy and fst representations.
I will try to find an easier example to illustrate this issue.

I think it is better to close this and open a new ticket where a single issue that is presented clearly and unambiguously.

OK. I am closing it and when I have time I will try to make this into a proper issue. It would help if we can have the segment_radii feature implemented in fst if it is possible.

The main issue is that the new stuff isn't as flexible as the old. It is easy to add new segment features, but the implementation won't be very efficient. So I first want to see if I can improve that. In the mean time, I can post an inefficient example here.

Yes, that would do since I will only use it to test the results (so I don't really need efficiency).

@lidakanari Done, see example.

authors: juanchopanza lidakanari

repo: BlueBrain/NeuroM


text:
Feature cache

Issue
Sometimes we want to compute features on different sets of neurites or morphologies. While it is possible to compute all the features we need, store them and then compute the combinations we need, it can be more convenient for the user to just compute the features on each set and don't bother we any cache mechanism.
Proposed solution
Provide a cache mechanism in NeuroM.

Could you please describe the issue, how this feature solves it, and a summary of what is going on? Thanks :)

Adrien is having fun!

Adrien is having fun!

Exactly! :laughing:
This PR is a bit exploratory to see what we can do.

Yeah probably, that's why I made it optional.
But I think that if it's possible to provide a cache mechanism that helps users 'most of the time', it can be interesting. And users with specific environments can still create their own cache using the features without the NeuroM cache.
For now I am going to let it in the current state and I will try to test it in several situations.

Yeah probably, that's why I made it optional.

Even then, it raises the question of why it is optional, which makes things more confusing to the user.

But I think that if it's possible to provide a cache mechanism that helps users 'most of the time', it can be interesting.

"Most of the time" is exactly why it can be dangerous - it's the edge cases that will catch people.  'Caching' is labeled the one of the hardest problems in computer science for a reason.
Can you provide more examples where it would help people 'most of the time' and what the time savings are?  Most of the features are computed rather quickly, so I'd like to see the numbers on where a cache is making a large difference to the run time of a system.
The thing is that it makes things more complicated to maintain, trace through the code, etc.

Mike raises a very good point here that first the bottlenecks have to be determined via a thorough analysis and then seek a solution to any performance issues.
For instance, maybe caching is not the best way to go in favor of composing features to be applied to morphologies via a single pass per morphology. Or maybe the complexity of some features needs to be reworked so that it doesn't drag the rest.

Just for some more context, this PR is from adrien seeing my code here: https://github.com/BlueBrain/diameter-synthesis/blob/main/diameter_synthesis/simpler_diametrizer.py where I had to to some recursive pass through neurons and compute many times section path lengths. A cache made a big speed up for me, as I had to recompute many times the same path lengths via the numpy.linalg.norm thing. This is one use case of using cache in neurom, which I did 'manually' here. Of course, there may be a smarter way to implement my algo without using a cache, but I was too lazy ;)

where I had to to some recursive pass through neurons and compute many times section path lengths. A cache made a big speed up for me, as I had to recompute many times the same path lengths via the numpy.linalg.norm thing.

That's exactly the behavior I'd expect - you have a use case where you know how to cache something, and adding a cache isn't bad for that particular path.
WRT caching, since neurom is using a mutable morphio object underneath (which is something that is/will be changed), the cache has to also check for invalidation if something has been changed - which is something that could catch someone, and why I think advanced users can add a cache to however they're calling the library, if they need one.

authors: adrien-berchet arnaudon eleftherioszisis mgeplf


text:
As support staff, Weevil is expected to have a Windows installer, to ensure that the application is deployed properly.

Objective

Get latest repository from GitHub
Visual Studio => Weevil => Setup/Installer => Build

Requirements:

no configuration should be needed
installer should be 100% decoupled from the plugins on the development machine
the Build operation should automatically add the files located at %WEEVIL_PLUGINS_PATH% to the installation package

Research
After reading a lot of articles, I found a simple approach that works:

Can I specify the output path for the MSBuild  tag?

<Project Sdk="Microsoft.NET.Sdk">
  <ItemGroup>
  <Content Include="$(WEEVIL_PLUGINS_PATH)\**\*" LinkBase="Plugins" CopyToOutputDirectory="PreserveNewest" />
</ItemGroup>
</Project>

Research
After reading a lot of articles, I found a simple approach that works:

Can I specify the output path for the MSBuild  tag?

<Project Sdk="Microsoft.NET.Sdk">
  <ItemGroup>
  <Content Include="$(WEEVIL_PLUGINS_PATH)\**\*" LinkBase="Plugins" CopyToOutputDirectory="PreserveNewest" />
</ItemGroup>
</Project>

repo: BlueDotBrigade/weevil


text:
Filter ComboBox should only display list of options when down arrow clicked.

Since implementing the new dark theme (#11), I have noticed that the ComboBox behavior has changed:

Clicking anywhere on the combo box will display the list of options, thus obscuring the UI.

Similar to the Windows WPF ComboBox behavior, the dropdown should only expand when you click on the down arrow button.
Additional Context

MaterialDesignInXamlToolkit project on GitHub
Using MaterialDesignThemes NuGet package v4.0.0-ci2347

Resource definition: MaterialDesignTheme.ComboBox.xaml

Initially I was unable to find the root cause, so I posted the following:

HowTo: Change “Material Design In Xaml” ComboBox behavior to only display dropdown when you click the arrow?
posted a question on MaterialDesignInXamlToolkit's Gitter page

apparently this is what the author uses for feedback

Problem
I don't know if this was the original intent for the MDIX library, but it appears that:

the toggleButton is higher up in the visual tree than the PART_EditableTextBox
when you turn on toggleButton border you see that the Button takes up the entire width of the ComboBox

Solution
Create a WPF attached property which enables us to:

have a behavior that is more like Microsoft's ComboBox
while making it relatively easy to upgrade to future releases of the MDIX library


text:
🛑 hosted-PalmettoGBA is down

In 191a3c7, hosted-PalmettoGBA (https://palmettogba.com/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: hosted-PalmettoGBA is back up in 1a08a18 after 16 minutes.


text:
🛑 hosted-PalmettoGBA is down

In cd21038, hosted-PalmettoGBA (https://palmettogba.com/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: hosted-PalmettoGBA is back up in 8cd842e.


text:
🛑 hosted-PalmettoGBA is down

In 4e1cd1c, hosted-PalmettoGBA (https://palmettogba.com/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: hosted-PalmettoGBA is back up in e026562 after 9 minutes.


text:
🛑 hosted-PalmettoGBA is down

In 7152817, hosted-PalmettoGBA (https://palmettogba.com/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: hosted-PalmettoGBA is back up in 233354d after 9 minutes.


text:
能否将vless vmess订阅合并在一起

1，小火箭一键订阅也能同时支持vless和vmess
2，适配clash meta
3，跟随新版ssp-uim，将reality和tuic协议也加入进去，扩展订阅下发
4，扩展一下sing-box内核支持的协议，例如hysteria

@worldneedme 合并很简单价格case就行了代码直接复制粘贴

@worldneedme 合并很简单加个case就行了代码直接复制粘贴

@a8866051 reality支持代码在这里https://github.com/Anankke/SSPanel-Uim/pull/2137

借楼问下怎么把vmess和trojan拆分  订阅只留下vmess和vless  然后订阅获取的列表排序是根据名字，而不是根据节点类型排序

authors: a8866051 jameqq worldneedme


text:
Cannot transmute between types of different sizes.

Running into this issue with rustc 1.59.0
= note: source type: InnerNode (384 bits)
= note: target type: critbit::_::{closure#0}::TypeWithoutPadding (256 bits)

Hi,
Can you please post your solana --version?
Are you importing the AOB with some specific features?
Thanks

@Lcchy solana-cli 1.9.13 (src:3ac7e043; feat:1070292356), no just doing a cargo build

Bump :)

All right, can you tell me which OS you are using? I don't see where this could be coming from right now, but I suspect some versioning/dependency issue. I am trying to reproduce it.

I confirm I cannot reproduce either.
Could you upload a minimal example on Github so we can help?

sorry for delay in responding, a macbook pro Apple M1 Pro chip

We tested it on an M1 cpu and we're indeed getting the same error. We will look into it but we don't expect to find something quickly as the error is linked to how Rust interacts with the hardware, sorry.
For the record, adding #[repr(C, align(8))] to the struct to force byte alignment does not help

HI @callensm, so we don't have an M1 Mac to properly test this, but my best recommendation would be to run try and compile + run through Rosetta. This repository might be of some help https://github.com/FdezRomero/rosetta-cli.
In general we're not really too worried about this : we build programs for the Solana VM which has a fixed architecture (BPF), which means we don't really need to worry about portability of the program itself, which is why I think that it's actually necessary for any Solana developer to have a development environment which is compatible with the Solana VM's architecture. I hope this can be achieved through Rosetta.
In any case, we might implement some feature flags to enable limited compatibility with different architectures.
Another element is that reading through the M1 arch docs I don't see the difference with BPF and x86_64, which makes me wonder if this might be a compilation issue with rustc (maybe there is a way to configure the compilator to fix this).

requiring rosetta doesn't seem like a reasonable solution. there are fixes to these alignment issues and the remainder of the rust and solana ecosystem support the aarch64 now.

We chose to use bytemuck in our programs, which makes extensive use of direct type casting. This means that the way we write define our structs and data structures is highly specific to the BPF and x86_64 architectures. Maybe there is a solution I'm not seeing here, and I'd be open to suggestions, but to me it seems like it's out of our hands, at least as long as we want to keep using the most efficient data structures for our particular problems.

I looked a bit more into it and found this issue : https://github.com/solana-labs/solana/issues/21269. It seems that the issue stems from different u128 alignment requirements. I've made an attempt to solve this issue in PR #64. If anyone with an M1 Mac can test this out, it would be of great help!

I looked a bit more into it and found this issue : solana-labs/solana#21269. It seems that the issue stems from different u128 alignment requirements. I've made an attempt to solve this issue in PR #64. If anyone with an M1 Mac can test this out, it would be of great help!

Just checked and this does resolve the aarch64 build target error.
Thank you!

I think this issue can be closed, since the merge of #64

seems like aarch64 branch changes were lost, just tried to recompile on an m1 and it's not compiling again.

Hi @uwecerron! Looking at the code right now I'm not sure I understand where this might me coming from. Would you mind posting the error you're getting?
Reopening in the meantime

We have a working solution for this in the pipeline at #82. Once we're done with review we should be able to mainline this. The only issue I am seeing is that developers down the line will have to specifically support the aarch64 architecture since the struct definitions change.
u128 is a really problematic type in rustc right now, and this seems to be due to a long standing LLVM bug [1]. In theory aarch64 and x86_64 should have the exact same alignment requirements for u128 but this isn't the case. This is actually quite fortunate for us since this means that x86_64 has the same constraints as the eBPF architecture, which makes our job easier when on x86_64.
Once this bug is resolved we might have to rewrite the AOB to natively use [u64;2] in its logic, but since the issue won't be resolved anytime soon I am not sure it's worth it right now.
[1] https://github.com/rust-lang/rust/issues/54341

authors: Lcchy callensm dr497 ellttBen pindaroso uwecerron

repo: Bonfida/agnostic-orderbook


text:
Synchronizing jobs seems to leave files - Create project-config.

When using the synchronize module to copy over zuul jobs and nodepool elements it seems to leave behind any old files which will still be read in elements. I'm sure there is an rsync flag here that we could use to clean up unknown files but i think we'd be better off pulling the configuration out into an infra style project-config.

Is this still something that needs to be implemented? If so, please add the help wanted tag and move it to the bottom of the "TODO" column in the Poop Deck!

authors: jamielennox missaugustina

repo: BonnyCI/hoist


text:
Permissions based on OU with LDAP

Attempted Debugging

[X] I have read the debugging page

Searched GitHub Issues

[X] I have searched GitHub for the issue.

Describe the Scenario
Currently I am using the following settings and have to add the group to many users:
LDAP_USER_TO_GROUPS=true
LDAP_GROUP_ATTRIBUTE="memberOf"
LDAP_REMOVE_FROM_GROUPS=false
But our permission system is based on OUs rather than groups, so for other services I use the following settings:
AUTH_LDAP_GROUP_SEARCH = "LDAPSearch('dc=corp,dc=com', ldap.SCOPE_SUBTREE,'(objectClass=group)')"
AUTH_LDAP_GROUP_TYPE = NestedGroupOfNamesType
Is it possible to also use these settings for assigning roles/permissions? I want the "IT Department" OU (with the external auth ID of "it-department" assigned) to work with roles.
Exact BookStack Version
v21.12.5
Log Content
No response
PHP Version
8.0
Hosting Environment
Ubuntu 20.04, installed using official guide.

Hi @usr-bin-urxvt,
We don't support any kind of LDAP group sync outside of the memberOf style groups system.
From what I've seen this is generally the standard for LDAP managed groups?
I wouldn't really be looking to extend our support in this area any further since adding edge-case auth features can built significant maintenance and support burden.
If it's just one group that you want to limit access to, you can often just update the LDAP_USER_FILTER.
If you have some dev skills available, we do have a logical theme system where you could hook into login events to potentially run custom functionality.

Thank you for the quick reply.

authors: ssddanbrown usr-bin-urxvt

repo: BookStackApp/BookStack


text:
I upgraded from 21.12.01 version to 23.02.01 version

Attempted Debugging

[X] I have read the debugging page

Searched GitHub Issues

[X] I have searched GitHub for the issue.

Describe the Scenario
After I updated, I encountered several problems, the first of which is that there are many differences in the database, as there are tables that have been completely modified or tables that have been added, such as:

joint_permissions
permission_role
role_permission
role_user
and other

When I did the update, I did not expect this modification to exist, as there was no warning, anywhere as far as I know
1- Before this process, I made a complete copy of the database and copies of the pictures and attachments folder.
2- I faced many other problems and was able to solve them with the help of documentation and videos I was able to make the system work, but I encountered two problems that I could not solve:

There is no folders with the name of bootstrap/cache or storage or public/uploads.
/settings/recycle-bin show An unknown error occurred.
I cannot upload any file to the system or any image.

Here is what I try:

Using the command from Common Issues & Resolutions.
Create folders manually.
Even the error files are empty.

System status
Everything works and the data was transferred from the old database to the new manually due to the conflict and everything else works except for what was mentioned above
Exact BookStack Version
23.02.01
Log Content
No response
PHP Version
8.1.16
Hosting Environment
OS

Ubuntu 20.04.5 LTS

Docker version 20.10.21, build 20.10.21-0ubuntu1~20.04.1
Docker-compose version 1.25.0, build unknown

BookStack 23.02.01.
Nginx Proxy Manager.
Mysql 10.6.12-MariaDB-log.

Hosting

Linode.

For installation I used docker-compose.yml + Additional lines for Nginx Proxy Manager.

Hi @Nick390,

When I did the update, I did not expect this modification to exist, as there was no warning

Yeah, database changes are common upon update. We don't publish warnings/advisories for these unless the user specifically needs to know about them for any reason. The changes should be managed as part of the upgrade process, there should rarely ever be a reason to make manual database changes.

Everything works and the data was transferred from the old database to the new manually

Be aware, manual changes may impact and cause further issues, especially on future updates.

There is no folders with the name of bootstrap/cache or storage or public/uploads

There won't be, since you're using a container. Those folders/files are in the container and the linuxserver team maps the required data into places within the /config directory that they advise to mount as a volume.

/settings/recycle-bin show An unknown error occurred.
I cannot upload any file to the system or any image.

Errors will be logged, Especially if you see the An unknown error occurred message.
I made an in-depth video regarding management of the linuxserver container setup here: https://www.youtube.com/watch?v=6A8hLuQTkKQ
This covers updates and other common tasks, showing you exactly what to expect and the steps to take.
Specifically look to around the 7:28 time of the video for details on finding log detail.

From what it became clear to me that I can go back to the old version by do fresh install and then return the data as it is and then use the terminal to upgrade the system to the new version.

I'm not really clear on the state of your instance/setup, it looks like things are getting a bit messy. I also don't really understand what the original issue was before you started making manual database changes.

But how I go back to 21.12.01 there is no docker image with 21.12.01

You can often find tagged container images here for various versions. I would not continue to attempt to use a manually altered database though, or one that's ran on a more recent BookStack version.
Personally, if possible, I'd restore from a backup then try to upgrade again, assessing the actual errors without trying manual database changes unless absolutely required.


text:
Update to 23.10.4 after installation-ubuntu-22.04.sh

Attempted Debugging

[X] I have read the debugging page

Searched GitHub Issues

[X] I have searched GitHub for the issue.

Describe the Scenario
I create a bookstack with the installation-ubuntu-22.04.sh script many month ago.
Today I need to update my bookstack to the 23.10.4 release but I don't know how.
I don't have any .git file on my server.
Any help?
Exact BookStack Version
23.02.3
Log Content
.
Hosting Environment
.

Hi @Zen-Theo,
Please can you explain exactly what you are attempting in the command line, and share the exact output/error you're seeing?

I found solution thanks

authors: Zen-Theo ssddanbrown


text:
Change the TintColor more than once

I need to change the TintColor of the checkbox if the user hasn't checked it, I tried with:
[_pCheckBox setTintColor:[UIColor redColor]];
But the color doesn't change, the checkbox keeps the first color I had set using the setTintColor method.
Am I doing something wrong?

Hi @Signoo,
Thank you for opening this issue. This is indeed a bug. The check box's tint color doesn't get set when using the setter method for some reason.
Using the property should work though.
 _pCheckBox.tintColor = [UIColor redColor];

Good catch!

Hi @Signoo,
Thank you for opening this issue.
The check box doesn't get redrawn when calling setTintColor:. This means that you either need to call reload after setting the tint color, or you need to set it before adding the check box to your view (either in IB or in code).
Let me know if you need more info!

Fixed with 6169686cba532b9586bb569dfb9ee33cf185d6ba.

Hi @Boris-Em , I've used the reload method and it worked! Thanks a lot! :)

authors: Boris-Em Signoo

repo: Boris-Em/BEMCheckBox


text:
🛑 centrooeste is down

In ea65f60, centrooeste (https://centrooeste.botslovers.com) was down:

HTTP code: 404
Response time: 398 ms

Resolved: centrooeste is back up in a87061d after 17 minutes.

repo: Botslovers-SL/uptime


text:
get_merge_fields() returns set()

I attached the code and the docx file. I tested with Python 3.4.4 |Anaconda 2.3.0 (64-bit) on Win7 64 bits
bug.zip

Just for reference, what would you expect the output to be?

I hope the title, name and'`ID' fields are filled with "title", "name" and "ID" string

The fields in the document are different from the expected MAILMERGE fields. Your field is defined as:
<w:r>
    <w:rPr>
        <w:rFonts w:hint="eastAsia"/>
        <w:sz w:val="24"/>
    </w:rPr>
    <w:fldChar w:fldCharType="begin"/>
</w:r>
<w:r>
    <w:rPr>
        <w:rFonts w:hint="eastAsia"/>
        <w:sz w:val="24"/>
    </w:rPr>
    <w:instrText xml:space="preserve">MERGEFIELD "</w:instrText>
</w:r>
<w:r>
    <w:rPr>
        <w:rFonts w:hint="eastAsia"/>
        <w:sz w:val="24"/>
    </w:rPr>
    <w:instrText>name</w:instrText>
</w:r>
<w:r>
    <w:rPr>
        <w:rFonts w:hint="eastAsia"/>
        <w:sz w:val="24"/>
    </w:rPr>
    <w:instrText xml:space="preserve">" </w:instrText>
</w:r>
<w:r>
    <w:rPr>
        <w:rFonts w:hint="eastAsia"/>
        <w:sz w:val="24"/>
    </w:rPr>
    <w:fldChar w:fldCharType="separate"/>
</w:r>
<w:r>
    <w:rPr>
        <w:rFonts w:hint="eastAsia"/>
        <w:sz w:val="24"/>
    </w:rPr>
    <w:t>«name»</w:t>
</w:r>
<w:r>
    <w:rPr>
        <w:rFonts w:hint="eastAsia"/>
        <w:sz w:val="24"/>
    </w:rPr>
    <w:fldChar w:fldCharType="end"/>
</w:r>

Whereas the format it's looking for is this:
<w:r>
    <w:rPr>
        <w:sz w:val="24"/>
    </w:rPr>
    <w:fldChar w:fldCharType="begin"/>
</w:r>
<w:r>
    <w:rPr>
        <w:sz w:val="24"/>
    </w:rPr>
    <w:instrText xml:space="preserve"/>
</w:r>
<w:r>
    <w:rPr>
        <w:rFonts w:hint="eastAsia"/>
        <w:sz w:val="24"/>
    </w:rPr>
    <w:instrText>MERGEFIELD name2 \* MERGEFORMAT</w:instrText>
</w:r>
<w:r>
    <w:rPr>
        <w:sz w:val="24"/>
    </w:rPr>
    <w:instrText xml:space="preserve"/>
</w:r>
<w:r>
    <w:rPr>
        <w:sz w:val="24"/>
    </w:rPr>
    <w:fldChar w:fldCharType="separate"/>
</w:r>
<w:r>
    <w:rPr>
        <w:noProof/>
        <w:sz w:val="24"/>
    </w:rPr>
    <w:t>«name2»</w:t>
</w:r>
<w:r>
    <w:rPr>
        <w:sz w:val="24"/>
    </w:rPr>
    <w:fldChar w:fldCharType="end"/>
</w:r>

I'm not sure why Word decided to write the mailmerge differently, but that's definitely the problem here. You can see the actual XML document if you unzip the bug.docx file and open word/document.xml from the extracted folder. To fix this in this package, it should look for <w:fldChar w:fldCharType="begin"/> and concatenate all contents of the <w:instrText>...</> nodes up until <w:fldChar w:fldCharType="end"/>. There's already something similar in there, which could be extended. If you feel like contributing, I'd welcome a pull request for this! 😀

Just for anyone's reference - I encountered this myself, but then realized the issue was simply that I needed to save my Word template in true .docx format, not a legacy MS word 2003 format. Thanks.

authors: Bouke DavidAStevenson retsyo

repo: Bouke/docx-mailmerge


text:
add: InputReaderSO

Basic implementaion of basic "InputReaderSO" according to https://github.com/BoundfoxStudios/community-project/issues/69
Signed-off-by: Christian Schamara schamara.christian@gmail.com
Beschreibung
Basis Implementierung vom InputReaderSO https://github.com/BoundfoxStudios/community-project/issues/69
Dies ist nur die Basis Implementierung des "InputReaders" und enthält noch keinerlei weiteren Funktionen.
Die Idee ist den "InputReader" als dynamisches ScriptableObject immer dann zu referenzieren wenn an einer Stelle ein Input benötigt wird, durch delegates kann dann an dieser Stelle auf ein bestimmtes Input Event gehört werden, um es dann weiter zu verarbeiten.
Checkliste

[x] Aufgabe verlinkt (falls nicht, PR editieren)
[ ] Tests geschrieben (nur relevant für Code-Änderungen)
[ ] Dokumentation aktualisiert (nur relevant für System-Entwicklungen)

PR Typ

[ ] Bugfix
[x] Feature
[ ] 3D-Modell
[ ] 2D-Arbeit
[ ] Sound-Effekte
[ ] Musik
[ ] Dokumentation
[ ] Sonstiges, bitte beschreiben:

@ManuelRauber ich habe bewusst auf die ActionMap "Camera" verzichtet, ich sehe keine wirkliche Notwendigkeit wieso die Camera ein extra ActionMap haben sollte, daher denke ich sollte die "Gameplay Camera" unter die ActionMap (Gameplay) kommen als CameraMovement (Action).

Note: Da ich hier die Generate C# Klasse vom neuen InputSystem verwende haben wir nicht mehr die Möglichkeit auf ein bestimmtes ControlScheme zu reagieren, partisch gesagt haben wir keinen "access" mehr um zu sehen welches "ControlScheme" grade aktive ist, um das ganze zu umgehen müssen wir zum gegeben Zeitpunkt ein UserInputHandler erstellen welcher einen neuen "InputUser" erstellt und diesen bei default ein ControlScheme z.B "Keyboard / Mouse" den User zuweißt.
Unity hat an dieser Stelle leider noch etwas nachzuholen und ich hoffe das Sie in Zukunft eine einfachere Möglichkeit bieten um mit der C# Class das CurrentControlScheme einzusehen.
Siehe dazu auch meinen Unity Forum Beitrag https://forum.unity.com/threads/generated-c-class-current-control-scheme.1314786/#post-8320842

@ManuelRauber ich habe bewusst auf die ActionMap "Camera" verzichtet, ich sehe keine wirkliche Notwendigkeit wieso die Camera ein extra ActionMap haben sollte, daher denke ich sollte die "Gameplay Camera" unter die ActionMap (Gameplay) kommen als CameraMovement (Action).

Guter Hinweis! Können wir ja dann auch entsprechend ein/ausschalten je nach Optionen.

Note: Da ich hier die Generate C# Klasse vom neuen InputSystem verwende haben wir nicht mehr die Möglichkeit auf ein bestimmtes ControlScheme zu reagieren [...]

Ich denke, dass wir das vorerst auch nicht brauchen und erstmal nur ganz normal mit Keyboard + Maus loslaufen. Wenn da ganze dann konkreter wird, kann man das Control-Schema-Handling noch einbauen. :)

@all-contributors please add @Salja for code

@all-contributors please add @Salja for code

authors: ManuelRauber Salja

repo: BoundfoxStudios/community-project


text:
Delete main.yml

É o Flork

... eu sei

igoguguv

authors: BoyFriendSoulEvil FlorkGames

repo: BoyFriendSoulEvil/Final-Escape-Port-APK


text:
Scale connection problematic in UsdPreviewSurface export

If I export, say, leaves and use the UsdPreviewSurface, I see in the shader:
float4 inputs:scale.connect = </materials/MAT_minecraft_block_jungle_leaves_BIOME/BIOME_minecraft_block_jungle_leaves.outputs:result>
This connects this shader:
        def Shader "BIOME_minecraft_block_jungle_leaves"
        {
            uniform token info:id = "UsdPrimvarReader_float3"
            float3 outputs:result
            string inputs:varname = "Cd"
        }

The problem is that there's a mismatch. That shader has a float3 outputs:result, but the scale.connect is asking for a float4 input. Most DCC apps try to gracefully recover from such mismatches, but I can verify that this scale mismatch fails in USD Composer:

Unfortunately, short of commenting out the "inputs:scale.connect" line out of every shader, I don't know how to properly fix the shader. I've asked around a bit; it doesn't seem possible for UsdPreviewSurface. Maybe you know.

Looks like a mistake on my part. I thought it would work when I originally made the UsdPreviewSurface material template, but it turns out it doesn't work. I'll get the material template updated for the next release to fix this.
Unfortunately, I am currently sick with a cold (been sick since Saturday, so it should be over soon), so it'll probably take a couple of days before I get a new version out.
In the mean time, you can easily fix it yourself by going to resources/UsdPreviewSurface/materials/minecraft/templates/base.json and remove the entire "@biomeColor@' section starting at line 75. When you then restart MiEx and export using the UsdPreviewSurface resource pack, it won't try to add the UsdPrimvarReader node and make that problematic connection.

Get better soon! No rush on my part - I'll just report things as I find them. Thanks for the workaround, I'll give that a try.

This has been fixed in the latest version of MiEx, which you can find here; https://github.com/BramStoutProductions/MiEx/releases/tag/v1.6.0

repo: BramStoutProductions/MiEx


text:
initSession not returning

I recently updated my branch SDK, and trying to use it with Ionic 1.
After seeing the deprecated message for the global window.DeepLinkHandler function, I updated my code from
Branch.initSession().then(function (response) {
to
Branch.initSession(function (response) {
but it stopped working. I managed to trace it a bit, and found that it gets to the line
return execute('initSession');, but never returns. I had to revert back to using the global function, and it works fine (?).
I call initSession after Branch.setDebug(DEVELOPMENT_MODE); but that one seems to return fine.

Hello @Nostrus,
Thank you for reaching out.
So basically what is happening:

You update the Branch SDK
You got an error saying DeepLinkHandler is depreciated
You removed

// global function
function DeepLinkHandler(data) {
  if (data) {
    alert('Data Link handler response: ' + JSON.stringify(data));
  }
}

You added

// Branch initialization
Branch.initSession(function(data) {
  // read deep link data on click
  alert('Deep Link Data: ' + JSON.stringify(data));
});

You click on your deep link
You are not getting data from the code in 4.

Can you please try the following?

Try the following testing procedures so there is no cached version of your app
Give me your environment info ( cordova plugin, cordova info) and device info (iOS version, Android version)
Give me any relevant Branch code. Since you are using Ionic 1, the placement of Branch.initSesssion is important

I look forward to your response.
Best,

Hi @ethanneff, thanks for the quick reply!
So, when when seeing the deprecated message I still get back the initSession response saying
{"+is_first_session":false,"+clicked_branch_link":false}
After doing steps 3 and 4 I no longer manage to step into the callback of initSession, which I previously used to handle application logic (hiding main loader and navigating to subpage based on Branch data)
I don't click on any link in this scenario. I deleted my app from my Adnroid phone before reinstalling it, but same results.
Android version is 5.1.
Branch.initSession(function (response) { is being called inside $ionicPlatform.ready(function () {
I attached cordova info, hope this is enough information :)
plugin-list.txt
cordova info.txt

@Nostrus , can you try executing your Branch.initSession inside the Angular .run() method instead of the $ionicPlatform.ready?

I tried this, and although my app doesn't halt anymore, the initSession callback is not called, either. Not sure anymore if it's supposed to be called in this new version. Same thing happens as I described originally:

it gets to the line return execute('initSession'); but never returns.

Hello @Nostrus,
Can you make sure Branch is defined in your app? You can do this by: launching your app to your device

Hello @Nostrus
Can you make sure Branch is defined in your app? You can do this by:

Connecting your device to your computer
Launching your app
Inspecting your app with Safari (docs)
Typing in Branch into Safari console
Example:

Additionally, when you are initializing Branch, can you make sure you are doing it it both deviceReady and resume.
Best,

@ethanneff Sorry for not getting back on this. I started migrating my app to Ionic 2 and invested time in that instead. Will update my code to use the Typescript examples of your library and that will hopefully work just fine.

authors: Nostrus ethanneff renesansz


text:
Create Dynamic Navbar

Create a Navbar that stays at the top of the screen

Add links and ability to cover content that goes under the Navbar

repo: BrandoDioDa/Website-Portfolio


text:
Assign balancing-authority demand to balancing-authority buses for HIFLD grid

:rocket:

[x] Is your feature request essential for your project?

Describe the workflow you want to enable
Currently, HIFLD grid building defines zones as a combination of state and interconnect, and leverages the demand profiles for usa_tamu to be able to roll up demand to these zones for testing. However, now that we have shapefiles representing balancing authority (BA) areas and sub-areas via #270, we can use these definitions to assign buses to BAs, and get BA-level hourly profiles either directly from EIA (via Form 930 data) or via a third-party source that performs data-correction on these data (e.g. https://zenodo.org/record/4116342). We may also want to define our zones as a combinations of BA & state, where the BA-level demand profiles are distributed to multiple states by the population-weighting of each bus; this step would increase the degree of assumptions/approximations, but could enable more detailed state-level policy studies.
Describe your proposed implementation, if applicable

We would create a new function which takes the substation/bus coordinates and a shapefile representing multiple BA geometries, and map each bus to exactly one BA area. If there's a bus that is in no geometries (there's a gap in the coverage) or multiple geometries (there's overlap in the coverage), we could map this bus to the nearest successfully-mapped bus. During HIFLD grid-building, we would call this function to assign buses to zones.
We would create a new function which retrieves EIA data via their API (https://www.eia.gov/opendata/qb.php?category=2123635 and sub-categories) for a given year, and call this function during HIFLD profile-building. Where necessary, the demand from EIA would be aggregated or split as necessary to match the zone set defined during grid-building.

Issue #241 has been kept open specifically for this issue, per Daniel Olsen's comment: https://github.com/Breakthrough-Energy/PreREISE/issues/241#issuecomment-1110135716

authors: danielolsen victoriahunt

repo: Breakthrough-Energy/PreREISE


text:
Current and accurate records

Rule comes from the owner of JustFixIt. To complete this rule we should implement proper storage and tracking systems for maintaining the business documents.

Current and accurate records must be kept of all business costs, invoices, client information, and project information.


text:
🛑 KS Koç Sistem is down

In 46d8cc6, KS Koç Sistem (https://www.kocsistem.com.tr) was down:

HTTP code: 0
Response time: 0 ms

Resolved: KS Koç Sistem is back up in 669d47f after 11 minutes.

repo: BrewInteractive/upptime


text:
reference to deprecated dev library - blocking upgrade to eslint 9

When stylelint was upgrade from 14-15, post-css-in-js was deprecated - instead, there are custom parsers. https://github.com/stylelint/stylelint/blob/main/docs/migration-guide/to-15.md#breaking-changes
One of those is https://www.npmjs.com/package/postcss-lit - Is there a reason we shouldn't switch to using this?

It's probably something worth looking into. Not all of our CSS is in a Lit component though. For example:

in a css template within a module: typography styles.css; (currently linted)
in a style block within a module colors.js (not sure if this is currently linted)

So we'll want to play around with it to ensure we'd be getting the coverage we want/need.

authors: dbatiste josephsaffron

repo: BrightspaceUI/stylelint-config


text:
[Question] Connecting classification layer to BERT

Hello @BrikerMan .  I implemented my model based on Kashagri BERT embedding.  Thus, I want to compare its performance with BERT.  So, I will fine-tune the embeddings and build the BERT based on Kashgari as follows.
build_model(self):
    embed_model = self.embedding.embed_model
    chanel1_x_sent=embed_model.output

    layer_output_2 = L.Dense(2, activation='sigmoid', name='classif')
    classi=layer_output_2(chanel1_x_sent)
    self.tf_model = tf.keras.Model(embed_model.inputs, classi)

My question:

Am I  right to implement BERT like this?
Thank you.

Yep, this is the correct way to do it. This should work.
One more thing, please check out how to use markdown currectly before next issue. Here is the document: https://guides.github.com/features/mastering-markdown/

repo: BrikerMan/Kashgari


text:
Clarify which Release tags are kept + fix autobuild retention time

See https://github.com/BtbN/FFmpeg-Builds/issues/129

The change to the readme seems like it'd make it more confusing than clear?
The fix of the typo is fine by me, I don't remember if I intended it to be 12 or 24.

The change to the readme seems like it'd make it more confusing than clear?
For me it was more confusing before, because of the "latest" build being the "Last Build" mentioned in the readme, I was almost using the files of that to be honest.
But this is your repository, if you don't like it, then reject the pull request, please :)

The fix of the typo is fine by me, I don't remember if I intended it to be 12 or 24.
It says 2 years in "README"-file, so it should be either 1 year there ot 24 here, I tried to solve it thise way.

I've pushed a hopefully more clear explanation to the readme.

Thank you 👍

authors: BtbN dtugend

repo: BtbN/FFmpeg-Builds


text:
Dead mans switch

Description
Added challenge smart contract, test and description
Concise description of proposed changes, We recommend using screenshots and videos for better description
Additional Information

[ ] I have read the contributing docs (if this is your first contribution)
[ ] This is not a duplicate of any existing pull request

Related Issues
Closes #{issue number}
Note: If your changes are small and straightforward, you may skip the creation of an issue beforehand and remove this section. However, for medium-to-large changes, it is recommended to have an open issue for discussion and approval prior to submitting a pull request.
Your ENS/address:

Great
On Mon, 27 May 2024, 16:55 escottalexander, @.***>
wrote:

@.**** requested changes on this pull request.
Hey KC, A few more changes suggested. Nice work implementing the new
mapping. Looking great!
Feel free to reach out on Telegram if you have questions about my comments.
In README.md
https://github.com/BuidlGuidl/eth-tech-tree-challenges/pull/29#discussion_r1616059170
:

@@ -1,4 +1,4 @@
-# Template For Challenge - ETH Tech Tree
+# Dead Man's Switch

Oh sorry, I should have been clearer. Can you change this to "Dead Man's
Switch - ETH Tech Tree". This way it will match the other challenges.
In README.md
https://github.com/BuidlGuidl/eth-tech-tree-challenges/pull/29#discussion_r1616064468
:

@@ -30,18 +30,12 @@ foundryup

In this challenge, you will create a smart contract that implements a "Dead Man's Switch". This contract allows users to deposit funds (ETH or other tokens) and set a time interval for regular "check-ins". If the user fails to check in within the specified time frame, designated beneficiaries can withdraw the funds.
-##### Scenario:
Sorry again, KC. I meant to say you should remove the "Here are some
helpful references: ..." section. You can add your scenario section back
in. I liked it.
The references section was just meant to be an example of where/how you
could include some links to articles or other materials related to this
challenge. If you don't know of any then you can remove the section.
In packages/foundry/contracts/DeadMansSwitch.sol
https://github.com/BuidlGuidl/eth-tech-tree-challenges/pull/29#discussion_r1616085971
:

 // Struct to store user data
 struct User {
     uint balance;
     uint lastCheckIn;
     uint checkInInterval;

   address[] beneficiaries;

   mapping(address => bool) beneficiaries;

Could we change the name of this to "isBeneficiary" or
"beneficiaryLookup"? Because it is more of a lookup to see if a specific
address is a beneficiary. I think that reads better when you are looking at
where it is used and it helps the user understand it's purpose.
As it is right now, there is no way to return all beneficiaries from it
and I feel like that is what it communicates if it is called beneficiaries.
In packages/foundry/contracts/DeadMansSwitch.sol
https://github.com/BuidlGuidl/eth-tech-tree-challenges/pull/29#discussion_r1616089705
:

  * @param userAddress The address of the user.

* @return The beneficiaries of the user.

* @param beneficiary The address of the beneficiary.

* @return The check-in interval of the user.

Need to add requirements so the challenger knows what it needs to do.
In packages/foundry/contracts/DeadMansSwitch.sol
https://github.com/BuidlGuidl/eth-tech-tree-challenges/pull/29#discussion_r1616093946
:

 }

receive() external payable {}
fallback() external payable {}

These methods are not needed so I would remove them. When I mentioned them
in the last review I was trying to say that they would need to be added to
the testing contract "DeadMansSwitch.t.sol" but only if you didn't add the
NON_CONTRACT_USER deal and startPranks. Looks like you did so you should be
good. Just remove them from here.
The risk in adding receive and fallback here is that it allows a user to
deposit to the contract without the contract updating their specific
balance. leading to funds stuck in the contract.
In packages/foundry/test/DeadMansSwitchTest.t.sol
https://github.com/BuidlGuidl/eth-tech-tree-challenges/pull/29#discussion_r1616102086
:

     );

   assertEq(beneficiaries.length, 1);

   assertEq(beneficiaries[0], BENEFICIARY_1);

}
// // Test withdrawing funds by the user

Remove the extra set of "//".
In packages/foundry/test/DeadMansSwitchTest.t.sol
https://github.com/BuidlGuidl/eth-tech-tree-challenges/pull/29#discussion_r1616113682
:

   deadMansSwitch.deposit{value: ONE_THOUSAND}();

   deadMansSwitch.setCheckInInterval(INTERVAL);

   deadMansSwitch.addBeneficiary(BENEFICIARY_1);

   vm.warp(block.timestamp + INTERVAL + 1);

   vm.startPrank(BENEFICIARY_1);

   deadMansSwitch.withdrawAsBeneficiary(THIS_CONTRACT);

   assertEq(deadMansSwitch.getBalance(THIS_CONTRACT), 0);

}

// Test that non-beneficiaries cannot withdraw funds
function testWithdrawAsNonBeneficiary() public {

   deadMansSwitch.deposit{value: ONE_THOUSAND}();

   deadMansSwitch.setCheckInInterval(INTERVAL);

   vm.warp(block.timestamp + INTERVAL + 1);

   vm.startPrank(NON_CONTRACT_USER);

   vm.expectRevert("Caller is not a beneficiary");

Change this line to vm.expectRevert();
Because we don't know what revert message to expect but we do know we want
to it to revert in some way.
That way no matter what revert message the user chooses for this condition
the test will still pass.
In packages/foundry/test/DeadMansSwitchTest.t.sol
https://github.com/BuidlGuidl/eth-tech-tree-challenges/pull/29#discussion_r1616113819
:

   deadMansSwitch.deposit{value: ONE_THOUSAND}();

   deadMansSwitch.setCheckInInterval(INTERVAL);

   vm.warp(block.timestamp + INTERVAL + 1);

   vm.startPrank(NON_CONTRACT_USER);

   vm.expectRevert("Caller is not a beneficiary");

   deadMansSwitch.withdrawAsBeneficiary(THIS_CONTRACT);

}

// Test that beneficiaries cannot withdraw funds before the interval has passed
function testWithdrawAsBeneficiaryBeforeInterval() public {

   deadMansSwitch.deposit{value: ONE_THOUSAND}();

   deadMansSwitch.setCheckInInterval(INTERVAL);

   deadMansSwitch.addBeneficiary(BENEFICIARY_1);

   vm.warp(block.timestamp + INTERVAL - 1);

   vm.startPrank(BENEFICIARY_1);

   vm.expectRevert("Check-in interval has not passed");

Change this line to vm.expectRevert();
Because we don't know what revert message to expect but we do know we want
to it to revert in some way.
That way no matter what revert message the user chooses for this condition
the test will still pass.
In packages/foundry/test/DeadMansSwitchTest.t.sol
https://github.com/BuidlGuidl/eth-tech-tree-challenges/pull/29#discussion_r1616116720
:

   assertEq(deadMansSwitch.getBalance(THIS_CONTRACT), 0);

}

// Test withdrawing funds by a beneficiary after the interval has passed
function testWithdrawAsBeneficiary() public {

   deadMansSwitch.deposit{value: ONE_THOUSAND}();

   deadMansSwitch.setCheckInInterval(INTERVAL);

   deadMansSwitch.addBeneficiary(BENEFICIARY_1);

   vm.warp(block.timestamp + INTERVAL + 1);

   vm.startPrank(BENEFICIARY_1);

   deadMansSwitch.withdrawAsBeneficiary(THIS_CONTRACT);

   assertEq(deadMansSwitch.getBalance(THIS_CONTRACT), 0);

}

// Test that non-beneficiaries cannot withdraw funds
function testWithdrawAsNonBeneficiary() public {

Let's add another version of this test where a non-beneficiary tries to
withdraw before the interval. It will be good to have that edge case
covered just in case the challenger's logic has a hole.
In packages/foundry/test/DeadMansSwitchTest.t.sol
https://github.com/BuidlGuidl/eth-tech-tree-challenges/pull/29#discussion_r1616164528
:

@@ -0,0 +1,148 @@
+// SPDX-License-Identifier: UNLICENSED
+pragma solidity ^0.8.13;

+import "forge-std/Test.sol";
+import "../contracts/DeadMansSwitch.sol";
+
+contract DeadMansSwitchTest is Test {

DeadMansSwitch public deadMansSwitch;
address THIS_CONTRACT = address(this);
address NON_CONTRACT_USER = vm.addr(1);
address BENEFICIARY_1 = vm.addr(2);
uint ONE_THOUSAND = 10 wei;

Shouldn't ONE_THOUSAND be 1000 wei?
In packages/foundry/test/DeadMansSwitchTest.t.sol
https://github.com/BuidlGuidl/eth-tech-tree-challenges/pull/29#discussion_r1616180250
:

// Test the check-in functionality

function testCheckIn() public {

   deadMansSwitch.setCheckInInterval(INTERVAL);

   deadMansSwitch.checkIn();

   assertEq(deadMansSwitch.getLastCheckIn(THIS_CONTRACT), block.timestamp);

}

// Test adding a beneficiary
function testAddBeneficiary() public {

   deadMansSwitch.addBeneficiary(BENEFICIARY_1);

   assertEq(

       deadMansSwitch.isBeneficiary(THIS_CONTRACT, BENEFICIARY_1),

       true

   );

}
// Test removing a beneficiary

Add new line above to separate these properly.
In packages/foundry/test/DeadMansSwitchTest.t.sol
https://github.com/BuidlGuidl/eth-tech-tree-challenges/pull/29#discussion_r1616190861
:

   vm.deal(NON_CONTRACT_USER, ONE_THOUSAND);

   vm.startPrank(NON_CONTRACT_USER);

   deadMansSwitch.deposit{value: ONE_THOUSAND}();

   deadMansSwitch.withdraw(ONE_THOUSAND);

   assertEq(deadMansSwitch.getBalance(THIS_CONTRACT), 0);

}

// Test withdrawing funds by a beneficiary after the interval has passed
function testWithdrawAsBeneficiary() public {

   deadMansSwitch.deposit{value: ONE_THOUSAND}();

   deadMansSwitch.setCheckInInterval(INTERVAL);

   deadMansSwitch.addBeneficiary(BENEFICIARY_1);

   vm.warp(block.timestamp + INTERVAL + 1);

   vm.startPrank(BENEFICIARY_1);

   deadMansSwitch.withdrawAsBeneficiary(THIS_CONTRACT);

   assertEq(deadMansSwitch.getBalance(THIS_CONTRACT), 0);

Add an assertion that the beneficiaries balance was updated to the amount
expected.
In packages/foundry/contracts/DeadMansSwitch.sol
https://github.com/BuidlGuidl/eth-tech-tree-challenges/pull/29#discussion_r1616197196
:

* - Emits a `BeneficiaryAdded` event with the caller's address and the beneficiary address.

*/

function addBeneficiary(address beneficiary) public {

   require(beneficiary != address(0), "Invalid beneficiary address");

   User storage user = users[msg.sender];

   require(!user.beneficiaries[msg.sender], "Beneficiary already added");

   user.beneficiaries[beneficiary] = true;

   emit BeneficiaryAdded(msg.sender, beneficiary);

}

/**

* @dev Removes a beneficiary for the user's funds.

* @param beneficiary The address of the beneficiary to remove.

* Requirements:

* - The beneficiary must be already added.

* - Emits a `BeneficiaryRemoved` event with the caller's address and the beneficiary address.

Add a requirement that "The beneficiary is removed". Hopefully it is
obvious to them but no harm in adding clarity.
In packages/foundry/contracts/DeadMansSwitch.sol
https://github.com/BuidlGuidl/eth-tech-tree-challenges/pull/29#discussion_r1616211588
:

/**

* @dev Gets the balance of the user.

* @param userAddress The address of the user.

* @return The balance of the user.

*/

function getBalance(address userAddress) public view returns (uint) {

   return users[userAddress].balance;

}

/**

* @dev Gets the last check-in time of the user.

* @param userAddress The address of the user.

* @return The last check-in time of the user.

*/

function getLastCheckIn(address userAddress) public view returns (uint) {

   return users[userAddress].lastCheckIn;

}

/**

* @dev Gets the check-in interval of the user.

* @param userAddress The address of the user.

* @return The check-in interval of the user.

*/

function getCheckInInterval(

   address userAddress

) public view returns (uint) {

   return users[userAddress].checkInInterval;

}

Let's remove these methods completely. We can get the values of these in
the tests with
(uint balance, uint lastCheckIn, uint checkInInterval) =
deadmansswitch.users[ADDRESS];
Or if you only need one of them you can do this:
(uint balance,,) = deadmansswitch.users[ADDRESS];
(,uint lastCheckIn,) = deadmansswitch.users[ADDRESS];
(,,uint checkInInterval) = deadmansswitch.users[ADDRESS];
Just no reason to require a user to build them if they aren't needed.
In packages/foundry/test/DeadMansSwitchTest.t.sol
https://github.com/BuidlGuidl/eth-tech-tree-challenges/pull/29#discussion_r1616218561
:

// Test the check-in functionality
function testCheckIn() public {

   deadMansSwitch.setCheckInInterval(INTERVAL);

   deadMansSwitch.checkIn();

   assertEq(deadMansSwitch.getLastCheckIn(THIS_CONTRACT), block.timestamp);

}

// Test adding a beneficiary
function testAddBeneficiary() public {

   deadMansSwitch.addBeneficiary(BENEFICIARY_1);

   assertEq(

       deadMansSwitch.isBeneficiary(THIS_CONTRACT, BENEFICIARY_1),

       true

   );

}

Because we are requiring that the beneficiary is not the zero address and
that they can't already be a beneficiary, we should add tests to check that
those cases are true.
—
Reply to this email directly, view it on GitHub
https://github.com/BuidlGuidl/eth-tech-tree-challenges/pull/29#pullrequestreview-2080935295,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/APJDTO24REMYRMU3UD3RHBDZENJQDAVCNFSM6AAAAABIIS4KBCVHI2DSMVQWIX3LMV43YUDVNRWFEZLROVSXG5CSMV3GSZLXHMZDAOBQHEZTKMRZGU
.
You are receiving this because you modified the open/close state.Message
ID: @.***
com>

Thanks for the feedback!
On Tue, 28 May 2024, 13:00 escottalexander, @.***>
wrote:

@.**** requested changes on this pull request.
Looking great! Nice work. Just a few small nit picks.
In packages/foundry/contracts/DeadMansSwitch.sol
https://github.com/BuidlGuidl/eth-tech-tree-challenges/pull/29#discussion_r1617103436
:

@@ -109,10 +110,10 @@ contract DeadMansSwitch {
}

 /**

* @dev Allows beneficiaries to withdraw the user's funds if the check-in interval has passed.

* @dev Allows isBeneficiary to withdraw the user's funds if the check-in interval has passed.

I think this was accidentally changed and should remain "beneficiaries"
In packages/foundry/contracts/DeadMansSwitch.sol
https://github.com/BuidlGuidl/eth-tech-tree-challenges/pull/29#discussion_r1617104032
:

  * @param userAddress The address of the user.

  * Requirements:

* - The caller must be one of the user's beneficiaries.

* - The caller must be one of the user's isBeneficiary.

Same here. Should be "beneficiaries"
In packages/foundry/contracts/DeadMansSwitch.sol
https://github.com/BuidlGuidl/eth-tech-tree-challenges/pull/29#discussion_r1617110522
:

*/

function getLastCheckIn(address userAddress) public view returns (uint) {

   return users[userAddress].lastCheckIn;

}

/**

* @dev Gets the check-in interval of the user.

* @param userAddress The address of the user.

* @return The check-in interval of the user.

*/

function getCheckInInterval(

   address userAddress

) public view returns (uint) {

   return users[userAddress].checkInInterval;

}
/**
* @dev Gets to check if there is a beneficiary.
* @param userAddress The address of the user.
* @param beneficiary The address of the beneficiary.

Should add @.*** https://github.com/return boolean representing
whether the address is a beneficiary"
In packages/foundry/contracts/DeadMansSwitch.sol
https://github.com/BuidlGuidl/eth-tech-tree-challenges/pull/29#discussion_r1617110907
:

 /**

  * @dev Gets to check if there is a beneficiary.
  * @param userAddress The address of the user.
  * @param beneficiary The address of the beneficiary.

* @return The check-in interval of the user.

* Requirements:

* - The beneficiary must be added.

I would change this to "returns true or false if the provided beneficiary
is a given userAddresses beneficiary"
In packages/foundry/test/DeadMansSwitchTest.t.sol
https://github.com/BuidlGuidl/eth-tech-tree-challenges/pull/29#discussion_r1617114022
:

@@ -85,7 +98,16 @@ contract DeadMansSwitchTest is Test {
deadMansSwitch.setCheckInInterval(INTERVAL);
vm.warp(block.timestamp + INTERVAL + 1);
vm.startPrank(NON_CONTRACT_USER);

   vm.expectRevert("Caller is not a beneficiary");

   vm.expectRevert();

   deadMansSwitch.withdrawAsBeneficiary(THIS_CONTRACT);

}
// Test that non-beneficiaries cannot withdraw funds before the interval has passed

Add extra line above this so that spacing is the same throughout.
—
Reply to this email directly, view it on GitHub
https://github.com/BuidlGuidl/eth-tech-tree-challenges/pull/29#pullrequestreview-2082564984,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/APJDTO63BBY2P5TEENFF62LZERWVBAVCNFSM6AAAAABIIS4KBCVHI2DSMVQWIX3LMV43YUDVNRWFEZLROVSXG5CSMV3GSZLXHMZDAOBSGU3DIOJYGQ
.
You are receiving this because you modified the open/close state.Message
ID: @.***
com>

Closed #22

authors: KcPele escottalexander

repo: BuidlGuidl/eth-tech-tree-challenges


text:
Expand documentation for memr?chr[23]

Resolves #61 (in the sense that the misunderstanding leading to that issue will be prevented in the future)

The CI failure seems spurious. It says that archive.ubuntu.org could not be reached. Seems like the Travis computer lost internet connection temporarily.

@BurntSushi have you gotten a chance to review this yet? It's not super urgent so I understand if you haven't. :)

repo: BurntSushi/rust-memchr

license: Unlicense


text:
Fixed exception when calling update_keyboard_mapping.

When calling update_keyboard_mapping, if the set of changes included any keys that were currently bound, __regrab would cause an exception:
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/zmq/eventloop/ioloop.py", line 440, in _run_callback
    callback()
  File "/home/whitelynx/devel/personal/fttpwm/fttpwm/x.py", line 153, in updateKeyboardMapping
    xpybutil.keybind.update_keyboard_mapping(self.pendingUpdateKeyboardMapping)
  File "/usr/lib/python2.7/site-packages/xpybutil/keybind.py", line 442, in update_keyboard_mapping
    __regrab(changes)
  File "/usr/lib/python2.7/site-packages/xpybutil/keybind.py", line 479, in __regrab
    for wid, mods, kc in __keybinds:
RuntimeError: dictionary changed size during iteration

This patch fixes the exception, but unfortunately, update_keyboard_mapping sometimes still doesn't correctly re-bind keys whose mappings have changed. (I'm still tracking that down)

I merged this into master.  Thanks!

authors: kdienes whitelynx

repo: BurntSushi/xpybutil

license: WTFPL


text:
[BUG] Execution of commands not working

Describe the bug
When I'm trying to run any command with events, neither works. Using example config provided on README of this GitHub gives me this output in console on join event:
[Server thread/INFO]: Welcome t0ssox
[Server thread/INFO]: Unknown or incomplete command, see below for error
[Server thread/INFO]: /say Hello t0ssox<--[HERE]

I guess this may have something to do with latest changes of text parsing or 1.19 bring up.
To Reproduce
Steps to reproduce the behaviour:

Install this mod and QSL/Fabric API.
Launch server for the first time.
Replace default config using example one from README from this GitHub.
Restart server.
None of these commands are executing for those events.

Expected behaviour
Successfully command execution without any error about unknown command in console.

I'll fix this when I have some time, should be in a couple of days

repo: ByMartrixx/player-events


text:
Add support for new keychain items

Ran it to validate that it works. Here is an example item from the new keychains.json:
{
    "id": "keychain-1",
    "name": "Charm | Lil' Ava",
    "description": "This charm can be attached to any weapon you own. Each attached charm can be detached by using a Charm Detachment. Detached charms will be returned to your inventory.",
    "rarity": {
      "id": "rarity_rare",
      "name": "High Grade",
      "color": "#4b69ff"
    },
    "market_hash_name": "Charm | Lil' Ava",
    "image": "https://raw.githubusercontent.com/ByMykel/counter-strike-image-tracker/main/static/panorama/images/econ/keychains/missinglink/kc_missinglink_ava_png.png"
  }

@easton36 seems like keychainDefinitions is missing.

Sorry! Forgot to add that file to the commit

LGTM. Thank you very much!!!! ❤

repo: ByMykel/CSGO-API


text:
flexpart-cosmo fails to build

Unfortunately spack install flexpart-cosmo @V8C4.0 fails to build on balfrin with spack-c2sm main.
This is the error log:
balfrin
spack spec flexpart-cosmo @V8C4.0

Input spec
--------------------------------
flexpart-cosmo@V8C4.0

Concretized
--------------------------------
flexpart-cosmo@V8C4.0%gcc@11.3.0 build_system=makefile arch=linux-sles15-zen3
    ^eccodes@2.25.0%gcc@11.3.0+aec+fortran~ipo~memfs~netcdf+openmp~png~pthreads~python+shared+tools build_system=cmake build_type=RelWithDebInfo definitions=auto jp2k=jasper samples=auto arch=linux-sles15-zen3
        ^cmake@3.24.3%gcc@11.3.0~doc+ncurses+ownlibs~qt build_system=generic build_type=Release arch=linux-sles15-zen3
            ^ncurses@6.3%gcc@11.3.0~symlinks+termlib abi=none build_system=autotools arch=linux-sles15-zen3
                ^pkgconf@1.8.0%gcc@11.3.0 build_system=autotools arch=linux-sles15-zen3
            ^openssl@1.1.1s%gcc@11.3.0~docs~shared build_system=generic certs=mozilla arch=linux-sles15-zen3
                ^ca-certificates-mozilla@2022-10-11%gcc@11.3.0 build_system=generic arch=linux-sles15-zen3
                ^perl@5.26.1%gcc@11.3.0~cpanm+shared+threads build_system=generic patches=0eac10e,8cf4302 arch=linux-sles15-zen3
        ^jasper@2.0.32%gcc@11.3.0+jpeg~opengl+shared build_system=generic build_type=Release arch=linux-sles15-zen3
            ^libjpeg-turbo@2.1.3%gcc@11.3.0 build_system=generic arch=linux-sles15-zen3
                ^nasm@2.15.05%gcc@11.3.0 build_system=autotools arch=linux-sles15-zen3
        ^libaec@1.0.6%gcc@11.3.0~ipo+shared build_system=cmake build_type=RelWithDebInfo arch=linux-sles15-zen3
    ^makedepf90@3.0.1%gcc@11.3.0 build_system=autotools arch=linux-sles15-zen3
        ^autoconf@2.69%gcc@11.3.0 build_system=autotools patches=7793209 arch=linux-sles15-zen3
        ^automake@1.15.1%gcc@11.3.0 build_system=autotools arch=linux-sles15-zen3
        ^gmake@4.2.1%gcc@11.3.0~guile build_system=autotools patches=ca60bd9,fe5b60d arch=linux-sles15-zen3
        ^libtool@2.4.7%gcc@11.3.0 build_system=autotools arch=linux-sles15-zen3
            ^m4@1.4.19%gcc@11.3.0+sigsegv build_system=autotools patches=9dc5fbd,bfdffa7 arch=linux-sles15-zen3
                ^diffutils@3.8%gcc@11.3.0 build_system=autotools arch=linux-sles15-zen3
                    ^libiconv@1.16%gcc@11.3.0 build_system=autotools libs=shared,static arch=linux-sles15-zen3
                ^libsigsegv@2.13%gcc@11.3.0 build_system=autotools arch=linux-sles15-zen3
        ^m4@1.4.18%gcc@11.3.0+sigsegv build_system=autotools patches=3877ab5,fc9b616 arch=linux-sles15-zen3
    ^netcdf-fortran@4.5.4%gcc@11.3.0~doc+pic+shared build_system=autotools arch=linux-sles15-zen3
        ^netcdf-c@4.8.1%gcc@11.3.0~dap~fsync~hdf4~jna~mpi+optimize~parallel-netcdf+pic+shared build_system=autotools patches=de556da arch=linux-sles15-zen3
            ^hdf5@1.12.2%gcc@11.3.0~cxx+fortran+hl~ipo~java~mpi+shared~szip+threadsafe+tools api=v18 build_system=cmake build_type=RelWithDebInfo arch=linux-sles15-zen3
            ^zlib@1.2.13%gcc@11.3.0+optimize+pic+shared build_system=makefile arch=linux-sles15-zen3

23.65s
OK
balfrin
spack install --test=root -n -v flexpart-cosmo @V8C4.0

==> libjpeg-turbo-2.1.3-vxremesaucbcsbw2cj6vli2t7whbmxlf is installed in an upstream Spack instance at /mch-environment/v6/linux-sles15-zen3/gcc-11.3.0/libjpeg-turbo-2.1.3-vxremesaucbcsbw2cj6vli2t7whbmxlf
[+] /mch-environment/v6/linux-sles15-zen3/gcc-11.3.0/libjpeg-turbo-2.1.3-vxremesaucbcsbw2cj6vli2t7whbmxlf
==> libaec-1.0.6-s2wcossdqgn7o4hipo3avct73olh4oa5 is installed in an upstream Spack instance at /mch-environment/v6/linux-sles15-zen3/gcc-11.3.0/libaec-1.0.6-s2wcossdqgn7o4hipo3avct73olh4oa5
[+] /mch-environment/v6/linux-sles15-zen3/gcc-11.3.0/libaec-1.0.6-s2wcossdqgn7o4hipo3avct73olh4oa5
[+] /usr (external autoconf-2.69-hekarjjefsb3vu26zf2s7yyo3lvyolct)
[+] /usr (external automake-1.15.1-mkwejwvvlqh5l6hzkwzyzgteaulgar5g)
[+] /usr (external gmake-4.2.1-g4qhznlx7etpnrgv2pjbhio2a6h4olhs)
==> libtool-2.4.7-l5hwkcmuqltdmusnkp7wq4ckne2j54db is installed in an upstream Spack instance at /mch-environment/v6/linux-sles15-zen3/gcc-11.3.0/libtool-2.4.7-l5hwkcmuqltdmusnkp7wq4ckne2j54db
[+] /mch-environment/v6/linux-sles15-zen3/gcc-11.3.0/libtool-2.4.7-l5hwkcmuqltdmusnkp7wq4ckne2j54db
[+] /usr (external m4-1.4.18-kks5y7thhwmcugkevckucjr5d7c3apep)
==> pkgconf-1.8.0-e3ts5emzovmwgyiq262u76slp62yevny is installed in an upstream Spack instance at /mch-environment/v6/linux-sles15-zen3/gcc-11.3.0/pkgconf-1.8.0-e3ts5emzovmwgyiq262u76slp62yevny
[+] /mch-environment/v6/linux-sles15-zen3/gcc-11.3.0/pkgconf-1.8.0-e3ts5emzovmwgyiq262u76slp62yevny
==> zlib-1.2.13-w7makiwo4wscxxldrpi5q5ywqlgw57xb is installed in an upstream Spack instance at /mch-environment/v6/linux-sles15-zen3/gcc-11.3.0/zlib-1.2.13-w7makiwo4wscxxldrpi5q5ywqlgw57xb
[+] /mch-environment/v6/linux-sles15-zen3/gcc-11.3.0/zlib-1.2.13-w7makiwo4wscxxldrpi5q5ywqlgw57xb
==> jasper-2.0.32-7atqanv6fysfaq6g3rzyabnv552xjskg is installed in an upstream Spack instance at /mch-environment/v6/linux-sles15-zen3/gcc-11.3.0/jasper-2.0.32-7atqanv6fysfaq6g3rzyabnv552xjskg
[+] /mch-environment/v6/linux-sles15-zen3/gcc-11.3.0/jasper-2.0.32-7atqanv6fysfaq6g3rzyabnv552xjskg
==> Installing makedepf90-3.0.1-mt3vvndaydyobe7aqnnlburf3jeuz6nv
==> No binary for makedepf90-3.0.1-mt3vvndaydyobe7aqnnlburf3jeuz6nv found: installing from source
==> No patches needed for makedepf90
==> makedepf90: Executing phase: 'autoreconf'
==> [2024-05-14-19:47:47.326626] '/usr/bin/autoreconf' '--install' '--verbose' '--force'
autoreconf: Entering directory `.'
autoreconf: configure.in: not using Gettext
autoreconf: running: aclocal --force
aclocal: warning: autoconf input should be named 'configure.ac', not 'configure.in'
autoreconf: configure.in: tracing
autoreconf: configure.in: not using Libtool
autoreconf: running: /usr/bin/autoconf --force
autoreconf: running: /usr/bin/autoheader --force
autoreconf: configure.in: not using Automake
autoreconf: Leaving directory `.'
==> makedepf90: Executing phase: 'configure'
==> [2024-05-14-19:47:50.036347] FILTER FILE: /scratch/mch/jenkins/workspace/Spack/spack_PR/spack-build_stage/spack-stage-makedepf90-3.0.1-mt3vvndaydyobe7aqnnlburf3jeuz6nv/spack-src/configure [replacing "^(\s*if test x-L = )("\$p" \|\|\s*)$"]
==> [2024-05-14-19:47:50.061064] FILTER FILE: /scratch/mch/jenkins/workspace/Spack/spack_PR/spack-build_stage/spack-stage-makedepf90-3.0.1-mt3vvndaydyobe7aqnnlburf3jeuz6nv/spack-src/configure [replacing "^(\s*test x-R = )("\$p")(; then\s*)$"]
==> [2024-05-14-19:47:50.083821] FILTER FILE: /scratch/mch/jenkins/workspace/Spack/spack_PR/spack-build_stage/spack-stage-makedepf90-3.0.1-mt3vvndaydyobe7aqnnlburf3jeuz6nv/spack-src/configure [replacing "^(\s*test \$p = "-R")(; then\s*)$"]
==> [2024-05-14-19:47:50.107096] '/scratch/mch/jenkins/workspace/Spack/spack_PR/spack-build_stage/spack-stage-makedepf90-3.0.1-mt3vvndaydyobe7aqnnlburf3jeuz6nv/spack-src/configure' '--prefix=/scratch/mch/jenkins/workspace/Spack/spack_PR/spack/opt/spack/linux-sles15-zen3/gcc-11.3.0/makedepf90-3.0.1-mt3vvndaydyobe7aqnnlburf3jeuz6nv' '--bindir=/scratch/mch/jenkins/workspace/Spack/spack_PR/spack/opt/spack/linux-sles15-zen3/gcc-11.3.0/makedepf90-3.0.1-mt3vvndaydyobe7aqnnlburf3jeuz6nv/bin'
checking for gcc... /scratch/mch/jenkins/workspace/Spack/spack_PR/spack/lib/spack/env/gcc/gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether /scratch/mch/jenkins/workspace/Spack/spack_PR/spack/lib/spack/env/gcc/gcc accepts -g... yes
checking for /scratch/mch/jenkins/workspace/Spack/spack_PR/spack/lib/spack/env/gcc/gcc option to accept ISO C89... none needed
checking for flex... flex
checking lex output file root... lex.yy
checking lex library... -lfl
checking whether yytext is a pointer... yes
checking for bison... bison -y
checking for a BSD-compatible install... /usr/bin/install -c
checking how to run the C preprocessor... /scratch/mch/jenkins/workspace/Spack/spack_PR/spack/lib/spack/env/gcc/gcc -E
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for size_t... yes
checking for working alloca.h... yes
checking for alloca... yes
checking for strcasecmp... yes
configure: creating ./config.status
config.status: creating Makefile
config.status: WARNING:  'Makefile.in' seems to ignore the --datarootdir setting
config.status: creating config.h
config.status: config.h is unchanged
==> makedepf90: Executing phase: 'build'
==> [2024-05-14-19:47:54.036579] '/usr/bin/make' '-j1' 'V=1'
flex -i -B  -t lexer.l > lexer.c
lexer.l:145: warning, rule cannot be matched
bison -y -d  find_dep.y
find_dep.y: warning: 2 shift/reduce conflicts [-Wconflicts-sr]
mv y.tab.c find_dep.c
mv y.tab.h find_dep.h
/scratch/mch/jenkins/workspace/Spack/spack_PR/spack/lib/spack/env/gcc/gcc -MM *.c > .depend
/scratch/mch/jenkins/workspace/Spack/spack_PR/spack/lib/spack/env/gcc/gcc -c -g -O2 -DVERSION=\"3.0.1\" errormesg.c
/scratch/mch/jenkins/workspace/Spack/spack_PR/spack/lib/spack/env/gcc/gcc -c -g -O2 -DVERSION=\"3.0.1\" list.c
/scratch/mch/jenkins/workspace/Spack/spack_PR/spack/lib/spack/env/gcc/gcc -c -g -O2 -DVERSION=\"3.0.1\" macro.c
/scratch/mch/jenkins/workspace/Spack/spack_PR/spack/lib/spack/env/gcc/gcc -c -g -O2 -DVERSION=\"3.0.1\" main.c
/scratch/mch/jenkins/workspace/Spack/spack_PR/spack/lib/spack/env/gcc/gcc -c -g -O2 -DVERSION=\"3.0.1\" modfile_name.c
/scratch/mch/jenkins/workspace/Spack/spack_PR/spack/lib/spack/env/gcc/gcc -c -g -O2 -DVERSION=\"3.0.1\" utils.c
/scratch/mch/jenkins/workspace/Spack/spack_PR/spack/lib/spack/env/gcc/gcc -c -g -O2 -DVERSION=\"3.0.1\" xmalloc.c
/scratch/mch/jenkins/workspace/Spack/spack_PR/spack/lib/spack/env/gcc/gcc -c -g -O2 -DVERSION=\"3.0.1\" find_dep.c
/scratch/mch/jenkins/workspace/Spack/spack_PR/spack/lib/spack/env/gcc/gcc -c -g -O2 -DVERSION=\"3.0.1\" lexer.c
/scratch/mch/jenkins/workspace/Spack/spack_PR/spack/lib/spack/env/gcc/gcc -o makedepf90 -DVERSION=\"3.0.1\" -g -O2 errormesg.o list.o macro.o main.o modfile_name.o utils.o xmalloc.o find_dep.o lexer.o
==> makedepf90: Executing phase: 'install'
==> [2024-05-14-19:47:55.924603] '/usr/bin/make' '-j1' 'install'
/usr/bin/install -c -d /scratch/mch/jenkins/workspace/Spack/spack_PR/spack/opt/spack/linux-sles15-zen3/gcc-11.3.0/makedepf90-3.0.1-mt3vvndaydyobe7aqnnlburf3jeuz6nv/bin
/usr/bin/install -c makedepf90 /scratch/mch/jenkins/workspace/Spack/spack_PR/spack/opt/spack/linux-sles15-zen3/gcc-11.3.0/makedepf90-3.0.1-mt3vvndaydyobe7aqnnlburf3jeuz6nv/bin
/usr/bin/install -c -d /scratch/mch/jenkins/workspace/Spack/spack_PR/spack/opt/spack/linux-sles15-zen3/gcc-11.3.0/makedepf90-3.0.1-mt3vvndaydyobe7aqnnlburf3jeuz6nv/share/man/man1
/usr/bin/install -c -m 644 makedepf90.1 /scratch/mch/jenkins/workspace/Spack/spack_PR/spack/opt/spack/linux-sles15-zen3/gcc-11.3.0/makedepf90-3.0.1-mt3vvndaydyobe7aqnnlburf3jeuz6nv/share/man/man1
==> makedepf90: Successfully installed makedepf90-3.0.1-mt3vvndaydyobe7aqnnlburf3jeuz6nv
  Stage: 4.06s.  Autoreconf: 2.66s.  Configure: 3.99s.  Build: 1.86s.  Install: 0.09s.  Post-install: 0.14s.  Total: 13.16s
[+] /scratch/mch/jenkins/workspace/Spack/spack_PR/spack/opt/spack/linux-sles15-zen3/gcc-11.3.0/makedepf90-3.0.1-mt3vvndaydyobe7aqnnlburf3jeuz6nv
==> hdf5-1.12.2-26iihun6gguz3lbhj5ilzfhexurpccuu is installed in an upstream Spack instance at /mch-environment/v6/linux-sles15-zen3/gcc-11.3.0/hdf5-1.12.2-26iihun6gguz3lbhj5ilzfhexurpccuu
[+] /mch-environment/v6/linux-sles15-zen3/gcc-11.3.0/hdf5-1.12.2-26iihun6gguz3lbhj5ilzfhexurpccuu
==> eccodes-2.25.0-iwgr3ot2ljkk5igcor4s4pleiz23tcbs is installed in an upstream Spack instance at /mch-environment/v6/linux-sles15-zen3/gcc-11.3.0/eccodes-2.25.0-iwgr3ot2ljkk5igcor4s4pleiz23tcbs
[+] /mch-environment/v6/linux-sles15-zen3/gcc-11.3.0/eccodes-2.25.0-iwgr3ot2ljkk5igcor4s4pleiz23tcbs
==> netcdf-c-4.8.1-ermcs67iouhyo7xlxk5xvetkzdyorqce is installed in an upstream Spack instance at /mch-environment/v6/linux-sles15-zen3/gcc-11.3.0/netcdf-c-4.8.1-ermcs67iouhyo7xlxk5xvetkzdyorqce
[+] /mch-environment/v6/linux-sles15-zen3/gcc-11.3.0/netcdf-c-4.8.1-ermcs67iouhyo7xlxk5xvetkzdyorqce
==> netcdf-fortran-4.5.4-qpkuzjpjr65anrkv5fenbitri4d3o72q is installed in an upstream Spack instance at /mch-environment/v6/linux-sles15-zen3/gcc-11.3.0/netcdf-fortran-4.5.4-qpkuzjpjr65anrkv5fenbitri4d3o72q
[+] /mch-environment/v6/linux-sles15-zen3/gcc-11.3.0/netcdf-fortran-4.5.4-qpkuzjpjr65anrkv5fenbitri4d3o72q
==> Installing flexpart-cosmo-V8C4.0-35wmuvvuxpsctgoh4ligzmyto52rf5bw
==> No binary for flexpart-cosmo-V8C4.0-35wmuvvuxpsctgoh4ligzmyto52rf5bw found: installing from source
==> No patches needed for flexpart-cosmo
==> flexpart-cosmo: Executing phase: 'edit'
==> flexpart-cosmo: Executing phase: 'build'
==> [2024-05-14-19:48:05.369103] '/usr/bin/make' '-j12' '-f' 'Makefile.spack'
Programming environment: GNU
mkdir ../obj_GNU_optompncdfout_HEAD
mkdir ../bin
cd ../obj_GNU_optompncdfout_HEAD && ftn -I/mch-environment/v6/linux-sles15-zen3/gcc-11.3.0/eccodes-2.25.0-iwgr3ot2ljkk5igcor4s4pleiz23tcbs/include -I/mch-environment/v6/linux-sles15-zen3/gcc-11.3.0/netcdf-fortran-4.5.4-qpkuzjpjr65anrkv5fenbitri4d3o72q/include -cpp  -fimplicit-none -Wall  -fbacktrace  -mcmodel=medium	 -O3 -ftree-vectorize -funroll-loops -finit-real=nan -fopenmp  -DNETCDF_OUTPUT -c ../src/par_mod.f90
cd ../obj_GNU_optompncdfout_HEAD && ftn -I/mch-environment/v6/linux-sles15-zen3/gcc-11.3.0/eccodes-2.25.0-iwgr3ot2ljkk5igcor4s4pleiz23tcbs/include -I/mch-environment/v6/linux-sles15-zen3/gcc-11.3.0/netcdf-fortran-4.5.4-qpkuzjpjr65anrkv5fenbitri4d3o72q/include -cpp  -fimplicit-none -Wall  -fbacktrace  -mcmodel=medium	 -O3 -ftree-vectorize -funroll-loops -finit-real=nan -fopenmp  -DNETCDF_OUTPUT -c ../src/com_mod.f90
cd ../obj_GNU_optompncdfout_HEAD && ftn -I/mch-environment/v6/linux-sles15-zen3/gcc-11.3.0/eccodes-2.25.0-iwgr3ot2ljkk5igcor4s4pleiz23tcbs/include -I/mch-environment/v6/linux-sles15-zen3/gcc-11.3.0/netcdf-fortran-4.5.4-qpkuzjpjr65anrkv5fenbitri4d3o72q/include -cpp  -fimplicit-none -Wall  -fbacktrace  -mcmodel=medium	 -O3 -ftree-vectorize -funroll-loops -finit-real=nan -fopenmp  -DNETCDF_OUTPUT -c ../src/turbulence_mod.f90
cd ../obj_GNU_optompncdfout_HEAD && ftn -I/mch-environment/v6/linux-sles15-zen3/gcc-11.3.0/eccodes-2.25.0-iwgr3ot2ljkk5igcor4s4pleiz23tcbs/include -I/mch-environment/v6/linux-sles15-zen3/gcc-11.3.0/netcdf-fortran-4.5.4-qpkuzjpjr65anrkv5fenbitri4d3o72q/include -cpp  -fimplicit-none -Wall  -fbacktrace  -mcmodel=medium	 -O3 -ftree-vectorize -funroll-loops -finit-real=nan -fopenmp  -DNETCDF_OUTPUT -c ../src/interpol_mod.f90
cd ../obj_GNU_optompncdfout_HEAD && ftn -I/mch-environment/v6/linux-sles15-zen3/gcc-11.3.0/eccodes-2.25.0-iwgr3ot2ljkk5igcor4s4pleiz23tcbs/include -I/mch-environment/v6/linux-sles15-zen3/gcc-11.3.0/netcdf-fortran-4.5.4-qpkuzjpjr65anrkv5fenbitri4d3o72q/include -cpp  -fimplicit-none -Wall  -fbacktrace  -mcmodel=medium	 -O3 -ftree-vectorize -funroll-loops -finit-real=nan -fopenmp  -DNETCDF_OUTPUT -c ../src/unc_mod.f90
../src/interpol_mod.f90:24:7:

   24 |   use com_mod, only: nzfull, nzhalf
      |       1
Fatal Error: Cannot open module file 'com_mod.mod' for reading at (1): No such file or directory
compilation terminated.
make: *** [Makefile.spack:267: ../obj_GNU_optompncdfout_HEAD/interpol_mod.o] Error 1
make: *** Waiting for unfinished jobs....
==> Error: ProcessError: Command exited with status 2:
    '/usr/bin/make' '-j12' '-f' 'Makefile.spack'

2 errors found in build log:
     10    cd ../obj_GNU_optompncdfout_HEAD && ftn -I/mch-environment/v6/linux-
           sles15-zen3/gcc-11.3.0/eccodes-2.25.0-iwgr3ot2ljkk5igcor4s4pleiz23tc
           bs/include -I/mch-environment/v6/linux-sles15-zen3/gcc-11.3.0/netcdf
           -fortran-4.5.4-qpkuzjpjr65anrkv5fenbitri4d3o72q/include -cpp  -fimpl
           icit-none -Wall  -fbacktrace  -mcmodel=medium	 -O3 -ftree-vectorize
           -funroll-loops -finit-real=nan -fopenmp  -DNETCDF_OUTPUT -c ../src/i
           nterpol_mod.f90
     11    cd ../obj_GNU_optompncdfout_HEAD && ftn -I/mch-environment/v6/linux-
           sles15-zen3/gcc-11.3.0/eccodes-2.25.0-iwgr3ot2ljkk5igcor4s4pleiz23tc
           bs/include -I/mch-environment/v6/linux-sles15-zen3/gcc-11.3.0/netcdf
           -fortran-4.5.4-qpkuzjpjr65anrkv5fenbitri4d3o72q/include -cpp  -fimpl
           icit-none -Wall  -fbacktrace  -mcmodel=medium	 -O3 -ftree-vectorize
           -funroll-loops -finit-real=nan -fopenmp  -DNETCDF_OUTPUT -c ../src/u
           nc_mod.f90
     12    ../src/interpol_mod.f90:24:7:
     13
     14       24 |   use com_mod, only: nzfull, nzhalf
     15          |       1
  >> 16    Fatal Error: Cannot open module file 'com_mod.mod' for reading at (1
           ): No such file or directory
     17    compilation terminated.
  >> 18    make: *** [Makefile.spack:267: ../obj_GNU_optompncdfout_HEAD/interpo
           l_mod.o] Error 1
     19    make: *** Waiting for unfinished jobs....

See build log for details:
  /scratch/mch/jenkins/workspace/Spack/spack_PR/spack-build_stage/spack-stage-flexpart-cosmo-V8C4.0-35wmuvvuxpsctgoh4ligzmyto52rf5bw/spack-build-out.txt

48.55s
FAILED

@pirmink @mjaehn can (one of) you have a look at this?

There is a race condition when building the package. See https://github.com/C2SM-RCM/flexpart/issues/21
I thought it was enough to fix it for the dev_v0.21.1 branch? If it is still needed on main, I can open a PR.

@dominichofer I don't know the release planning of spack, but I assume it should definitively be on main when flexpart-cosmo@V8C4.0 becomes operational on 28 May 2024.

I think it would be good to have that fix in main. Looking forward to your PR, @mjaehn . Thank you.

authors: dominichofer mjaehn pirmink


text:
lmdb.Error: ./lmdbs/PDBscreen: No such file or directory

Process Process-1:
Traceback (most recent call last):
File "/home/chentong/anaconda3/envs/pytorch/lib/python3.9/multiprocessing/process.py", line 315, in _bootstrap
self.run()
File "/home/chentong/anaconda3/envs/pytorch/lib/python3.9/multiprocessing/process.py", line 108, in run
self._target(*self._args, **self._kwargs)
File "/mnt/d/papaer_share/EquiScore/train.py", line 92, in run
train_dataset = ESDataset(train_keys,args, args.data_path,args.debug)#keys,args, data_dir,debug
File "/mnt/d/papaer_share/EquiScore/dataset/dataset.py", line 45, in __init__
env = lmdb.open(args.lmdb_cache, map_size=int(1e12), max_dbs=2, readonly=True)
lmdb.Error: ./lmdbs/PDBscreen: No such file or directory

我是按照Retraining EquiScore or fine tune your model is also very simnple!这个过程操作的。
先执行./data/data_splits/screen_model/data_split_for_training.py ，
之后执行python train.py --ngpu 1 --train_keys your_keys_path --val_keys your_keys_path --test_keys your_keys_path
之后报上述错误，请问我如何得到the Folder containing trainging data in lmdb format?

你可以检查一下文件路径问题，你是否已经通过邮件问过我相关问题，如果可以的话，请在这里提问，方便大家遇到相同问题可以参考。（You can check the file path problem, whether you have asked me about it through email, if possible, please ask here, so that everyone can refer to the same problem.）

就是没有这个路径，但是我不知道这个路径里面的数据是什么，以及如何创建

你打开test参数 ，python train.py --ngpu 1 --test --train_keys your_keys_path --val_keys your_keys_path --test_keys your_keys_path ,应该就行了，不过这样会很慢，推荐你根据readme提供的方案，先预处理数据集到LMDB

你好，想请教下如何准备这个文件./lmdbs/PDBscreen，谢谢。

authors: CAODH Mengo-ye chentong456

repo: CAODH/EquiScore


text:
🛑 RadCord Bot is down

In d6da9cd, RadCord Bot (https://radcord.xyz) was down:

HTTP code: 0
Response time: 0 ms

Resolved: RadCord Bot is back up in 7637f62 after 9 minutes.


text:
chore: use git subtree instead of git submodule

git subtree 并不完美，但缺点看起来比 git submodule 更少
原有的 submodule 所在目录需要调整一下，方便加多个 C++ 模块

git subtree 在 push 方面缺点过于明显，难以接受。
为了保持一致性，决定：无论是否需要 push，均统一使用 git submodule。
参考

If you own an external repository to which you will likely push code, use Git submodule because it is easier to push.

Git - Subtree - GeeksforGeeks


text:
fix segfault when ; missing in word definition

This change also supports multiline word definitions. See issues.

I have incorporated these changes into the main branch, thanks!

authors: CCurl keplerg


text:
Divide up the reports/ blobstore into new directories and subdirectories

We'll stop using the reports/ directory, and we'll start using three new directories, received/, internal/, and ready/.  As follows:

The receive step will put the originally received report into received/, exactly byte for byte as the payload was received.  (Note:  If the payload was empty, I believe the code doesn't create an entry in the report_file table, nor a empty blob in the blobstre. Please confirm this). So, the receive step should put exactly one file in the received/ folder per successful run.  Use a .csv or .hl7 suffix (or others in the future), as per the file type.   Do NOT store the 'internal' version of this file any ore - there's no need for it.  (If you just do #1010, then you have done this step!)
All other files created by the receive step should go into the internal/ folder, and should have an .internal.csv suffix.  (This is a change from current .internal, to make them easier to read when we pull them out for debugging)
The batch step creates files ready for download.  The batch step should put all its result files into the ready/ folder,in a subdirectory named after its full receiver name (not just the org).     For example, if the file is to go to receiver elr in organization vt-doh, create the directory ready/vt-doh.elr/

In all cases, if any directory or subdirectory does not exist, create it.  (eg, the first time receive runs in prod, it will created the received directory)
Test that the body_url in the report_file table reflects the new locations, and that it still "works" for files in the old reports/ location.
Do not move or touch any files from the old reports/ location - that should continue to work.
Test the download site carefully.   The new use of directories should be utterly hidden from the user.  Test that download of files in the old reports/ location also still works.
For this ticket, don't change the filenames of internal/ or ready/*/ files.   I'll deal with that in a separate ticket.
Test this in staging or in the datarobot staging, or get someone to test it explicitly in staging.
I don't think any terraform changes are needed for this, but please confirm. (Eg, try greping for 'reports' in our .tf files)

This bug has now happened.  See #1550

repo: CDCgov/prime-reportstream


text:
Implement code to condition comparison API

Problem statement
When onboarding a sender, they are currently required to provide a CSV file containing their supported LOINC and SNOMED codes. An onboarding engineer processes this file using a CLI command to identify codes not mapped in the code-to-condition table. To simplify and automate this workflow, a new UI is being developed that will allow senders to upload their CSV files directly and view which codes are mapped or unmapped.
To support this UI, a REST API is needed. This API will accept the contents of the sender's CSV file, process it to identify unmapped codes and any errors, and return the results.
What you need to know

Example UI response: Figma Design
Sender Example Sheet: ReportStream Mapping Template.xlsx
CLI Instructions: How to check error codes manually: CLI Documentation
Logic Source:

Code comparison logic: LookupTableCommands.kt (line 560)
Example API with authentication: ReportFunction.kt (processFhirDataRequest, line 141)

API Requirements

Input: The API must accept the contents of the sender's CSV file in the request body.
Authorization: Only accounts with "sender" or "admin" roles should have access to the API.
Processing: The API will:

Compare CSV file data against the code-to-condition table.
Return a list of mapped and unmapped codes.
Return details of any errors encountered during processing.

Acceptance criteria

[ ] The API correctly identifies and returns mapped and unmapped codes.
[ ]  The API provides clear error details for any issues during processing.
[ ]  The API accepts the CSV file contents in the request body.
[ ]  Access to the API is restricted to authorized "sender" and "admin" roles.
[ ]  Comprehensive documentation is created for the API.

Spillover: We expected this to take more than 1 sprint

authors: chris-kuryak victor-chaparro


text:
OH - Timestamp Offset Failures

ReportStream team learned from SimpleReport users that SR results may not be reaching OH-DOH via RS. Upon further inquiry with OH-DOH, it was found that OH has concerns with the timestamp contained in RS messages.
It seems OH may not be able to work with the UTC offset that is currently part of our messages.
Example message where OH has concerns: a108cdd5-a97b-4a16-b529-5910e260fd5a
OBR|1|a108cdd5-a97b-4a16-b529-5910e260fd5a^CAA East Liverpool Campus Building #1 ^36D0709053^CLIA|a108cdd5-a97b-4a16-b529-5910e260fd5a^CAA East Liverpool Campus Building #1 ^36D0709053^CLIA|95409-9^SARS-CoV-2 (COVID-19) N gene [Presence] in Nose by NAA with probe detection^LN^^^^2.68|||202111301827+0000|202111301827+0000||||||||1124469408^Sharma^Abhay^^^^^^NPI&2.16.840.1.113883.4.6&ISO^^^^NPI|(330)424-5686^WPN^PH^^1^330^4245686|||||202111301842+0000|||F
OBX|1|CWE|95409-9^SARS-CoV-2 (COVID-19) N gene [Presence] in Nose by NAA with probe detection^LN^^^^2.68||260373001^Detected^SCT|||A^Abnormal (applies to non-numeric results)^HL70078^^^^2.7|||F|||202111301827+0000|36D0709053^CAA East Liverpool Campus Building #1 ^CLIA||Accula SARS-Cov-2 Test_Mesa Biotech Inc._EUA^Accula SARS-Cov-2 Test*^99ELR^^^^2.68^^Accula SARS-Cov-2 Test_Mesa Biotech Inc._EUA||202111301842+0000||||CAA East Liverpool Campus Building #1 ^^^^^CLIA&2.16.840.1.113883.4.7&ISO^XX^^^36D0709053|16480 Saint Clair Ave^^East Liverpool^OH^43920^^^^39029
SPM|1|a108cdd5-a97b-4a16-b529-5910e260fd5a&CAA East Liverpool Campus Building #1 &36D0709053&CLIA^a108cdd5-a97b-4a16-b529-5910e260fd5a&CAA East Liverpool Campus Building #1 &36D0709053&CLIA||445297001^Swab of internal nose^SCT^^^^2.67||||53342003^Internal nose structure (body structure)^SCT^^^^2020-09-01|||||||||202111301827+0000|20211130182706.0000+0000
Another message from a different lab that is fine for OH:
OBR|1||8885a219-5829-4d10-8171-7f9414d42fef^eMed^2.16.840.1.113883.3.2611^ISO|94558-4^SARS-CoV-2 Ag Resp Ql IA.rapid^LN^94558-4^SARS-CoV-2 (COVID-19) Ag [Presence] in Respiratory specimen by Rapid immunoassay^L|||20211129000000|||||||||1922607886^Magistri^Marco^^^^^^NPI&2.16.840.1.113883.4.6&ISO^^^^NPI|^WPN^PH^^1^888^7955826|||||20211129114906|||F|
OBX|1|CWE|94558-4^SARS-CoV-2 (COVID-19) Ag [Presence] in Respiratory specimen by Rapid immunoassay^LN^94558-4^SARS-CoV-2 (COVID-19) Ag [Presence] in Respiratory specimen by Rapid immunoassay^L||260373001^Detected^SCT|||A^Abnormal^HL70078|||F|||20211129000000|||BinaxNOW COVID-19 A#^^99ELR||20211129114906||||eMed Labs, LLC^D^^^^CLIA&2.16.840.1.113883.4.7&ISO^XX^^^10D2194742|990 Biscayne Blvd^Suite 1501^Miami^FL^33132^USA^B|
NTE|1|L|BinaxNOW COVID-19 Ag Card Home Test_ Abbott Diagnostics Scarborough, Inc._EUA|
SPM|1|^8885a219-5829-4d10-8171-7f9414d42fef&eMed&2.16.840.1.113883.3.2611&ISO||258500001^Nasopharyngeal swab^SCT|||||||||||||20211129000000|20211129114906|

@MauriceReeves-usds @RickHawesUSDS OH raised an issue similar to WA with the time offset. OH reports that removing the offset solves the issue.
No next steps or timeline has been promised yet to OH.

Blocked by https://app.zenhub.com/workspaces/onboarding--operations-6166edbd409257001e09f1b2/issues/cdcgov/prime-reportstream/3243

@MauriceReeves-usds with the fix for WA created, can we do the same for OH and IL as well?