Which image to use for no restrictions on time and number of instances

Hi, I am running a copy of PWD locally and I want to try to modify the image so there are no restrictions on time and number of instances. In the Readme you suggested changing the environment variable for the image used. Do we have to change the environment variable in the config.go file?
Thanks

HI, instance number is hardcoded here:
https://github.com/play-with-docker/play-with-docker/blob/master/handlers/new_instance.go#L22
And session time is controlled here:
https://github.com/play-with-docker/play-with-docker/blob/master/config/config.go#L46-L61

Thank you for the quick reply. What would I have to do after I make the changes for those changes to take effect?


MqttConnectionSettings.CreateFromEnvVars does not work if the env var value contains '='

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

Minimal steps to reproduce
Call MqttConnectionSettings.CreateFromEnvVars with a file containing a variable that contains an '=' in the value, such as MQTT_USERNAME=reg-cp-1/registrations/device-1/api-version=2023-12-01-preview
Any log messages given by the failure
Silent failure.
Expected/desired behavior
Environment variables with '=' in value are used.
Language
C#
OS and Version?
Any

what's the reason of passing the api-version in the username?
Should it use UserProperties in the connect packet ? https://docs.oasis-open.org/mqtt/mqtt/v5.0/os/mqtt-v5.0-os.html#_Toc3901054

Using the USERNAME field to specify api-version seems questionable. Can we discuss with service owners?
btw, I guess you could specify the value with quotes:
MQTT_USERNAME="reg-cp-1/registrations/device-1/api-version=2023-12-01-preview"

But the client doesn't control what the server requires in the connect username field. The "api-version=" is one case I ran across but I suppose a username could have an '=' in it, like a username "foo=bar".
The current implementation does not support surrounding the value with quotes.
If supporting quoted values is the preferred solution to this problem, then let's specify that (and ensure that the implementation supports escaping quotes as well for values that contain quotes).
BTW, is there a spec for .env files that describes what they should and should not support? I couldn't find one with a quick search.

Yeah, I'd say that allowing quotes is the preferred solution.
AFAIK there is no "formal" spec, see this doc from docker
https://docs.docker.com/compose/environment-variables/env-file/
https://stackoverflow.com/questions/68267862/what-is-an-env-or-dotenv-file-exactly

Okay, so in order to address this issue, the designers of the MQTTnet client extensions library will need to define what features are supported in a .env file:

Comments
Single and double quote support
Interpolation
Escape sequences

Okay, but is there a standard definition for an MQTT connection string? I couldn't find this, either. For readability, which is probably one of the points of these samples, the .env key=value approach is nice. Either way, the connection settings input format should be specified and then implemented.
Since this issue is narrowly about the .env file and the '=' character, would you prefer that I open an issue that is used for specifying the connection settings for these samples?

is there a standard definition for an MQTT connection string?

I'm not aware neither, we are defining our own here
Is that document enough? if not, feel free to file a new issue


Campaign & Unused Properties

This Pull Request fixes a lot of the "broken" properties, that are only used on campaign or otherwise unused objects. This also adds the "single laser" directions to the (unused) sweep laser, as i noticed that was missing too.

It would be really nice if this was merged in, @tyoeer, especially since Bscotch has relaxed a bit on the rules of using cut content.


Update net.cpp

Update node to nova exchange
Enough of that wallet builder

Let me send this to our development team, they started work today. Created two nodes, plus a new block explorer and mining pool. They will update everything in few days. Plus a brand new GitHub repository will also be created. Thanks for pointing out issues. We are delighted that you're taking notice.


Create F2_10.c

The application you will be writing for is intended to run on a small, inexpensive embedded device that does not have a floating point unit. This means that the processor can only do integer arithmetic. However, the device does have a display and needs to display the result of floating point arithmetic to the user.  Because this is a small inexpensive processor there is no support for strings or any mathematical library functions. You must write all the code yourselves performing all the floating point math with integers only and no strings! Character arrays, or C strings, can't tell you their size but they do end with a '\0' character.
The requirements for the code are to write one of the functions presented below. All the functions return a boolean value indicating the success or failure of the operation. Improper data is the most likely cause for a function to fail. You may add your own additional helper functions (I had at least a half dozen) but you must include them for the review. Do not change the interface to these functions.
These two functions take as parameters two sets of mantissa and characteristic and a char array to hold the result of the arithmetic operations. The result of the add or subtract should be converted into char's and placed in the result array. The array must end with a '\0'. The 'len' parameter tells how many characters can be placed on the result array. For these functions to return true you must at a minimum store the characteristic of the result. If the result is a non-integer place as many of the digits as will fit in the result after a decimal point.
bool add(int c1, int n1, int d1, int c2, int n2, int d2, char result[], int len);
bool subtract(int c1, int n1, int d1, int c2, int n2, int d2, char result[], int len);
...
...
char answer[100];
int c1, n1, d1;
int c2, n2, d2;

c1 = 1;
n1 = 1;
d1 = 2;

c2 = 2;
n2 = 2;
d2 = 3;

//if the C string could hold at least the characteristic if(add(c1, n1, d1, c2, n2, d2, answer, 100))
{
    //display string with answer 4.166666666...
}
else
{
    //display error message
}
'''

I am working on this

Pros:

The interface provided for both functions is well-structured.
It properly focuses on integer arithmetic, which serves the purpose of a small embedded device given its constraints.

Potential Improvements:

You should be able to handle mixed fractions in a case.
Fractions should be reduced to their lowest form before calculations.
You could add specific in-line comments to explain the math behind the functions.
In line 16, set the size of the character array as a global variable so that it can be changed if there is a version update in the device.
Line 17 and 18, you could define the variables in a more informative manner or add some comments regarding them. For Example: d1 could be int denominatorOne or denominator1. Use camel case for naming convention.
Line 22 and 26, variables d1 & d2 should be checked for non zero before performing any operations.


ESP don't connect to uplink AP #279 reopen

Idem issue 279: ESP does not connect to AP.  I made tests with one nodemcu and two different AP.

Maybe the AP doesn't accept IEEE 802.11g clients? In STATIONAP mode the ESP can only work in g mode, not in n.

After a couple of tests: connexion is KO in WPA and OK in WEP security and/or without security. Wifi n or g, both work correctly. In which part of the firmware is the security managed ? Thanks for your help Martin.

It is configured here https://github.com/martin-ger/esp_wifi_repeater/blob/master/user/user_main.c#L4042
But I am not aware of any general problem here. In fact, this is standard code and it works just fine in my setup. Maybe the pw ist too short? 8 chars minimum.

Changing password including two blank caracters with a new password without blank and it works good in WPA. ESP8266webserver library doesn't have this issue. What do you think about that ?


[Suggestion] Require authentication

Steam-buddy contains an increasing amount of features which should not be accessible to everyone on the network. A way to mitigate this would be to require users to log in first.
The easiest way we could enable logging in would be to use basic authentication, since it is supported by bottle. I found instructions on how to do that here.
For account management, we could just use the users on the system. I did find a pam library for python which would allow us to do that. Doing so would mean we require a page on which you can change a user's password, but that should be possible with the passwd command.

The pam library is also available in the arch repository.

#34 could solve this issue.


[WIP] Updating the Docker files to work with 1.0

Updating from Trusty (14.04 LTS) to Xenial (16.04 LTS)

Coverage remained the same at 71.571% when pulling 723e7b44d0677ab3a3e2e853e0cfadca56608766 on mikegrima:updateDocker into 814b49d661eccaef54cdf2d728d8f82fa6301eae on Netflix:develop.


Server Error

Describe the bug
I didn’t expect this problem to be caused by windicss, and it took me to investigate for a long time. :(
Minimal Reproductions

clone https://github.com/anncwb/server-bug
yarn && yarn dev
start server
cd ./server.  && yarn start
Open the browser and find that Vite’s post proxy cannot be sent out

I checked many places, but I didn't expect it to be a problem with this plugin. Back to 0.8.4 the problem disappeared
Versions

vite-plugin-windicss:0.9.2
vite:2.0.5
framework(vue/react/svelte/etc):vue

Additonal Context

@antfu

Can you describe it a bit?

That is, the request for the post interface failed without any response

Can be sure that it was caused by this submission f06d13e097d07ecef81e5f72edb35125180bcc5b

This is some feedback from me, you should understand https://github.com/anncwb/vue-vben-admin/issues/386

@antfu  Hope this is useful for you。 I know the Nuggets way, and the vite-plugin-mock I wrote before also encountered a similar situation. The reason is that body-parser cannot intercept all of them. Only requests that need to be processed by the plug-in can be intercepted. So you need to obtain the body parameters of the post request by yourself


SSO cleanup

Changes in this Pull Request:

saml related code and configuration cleanup

Mandatory checks:

[x] latest changes were fetched from the upstream branch before creating this PR (branch is up to date)
[ ] changes were tested manually
[ ] unit tests were properly implemented - N/A
[ ] communication about interdependent changes has been sent to the team (if applicable) - N/A
[x] respective Jenkins jobs were referenced in additional context section of this PR

OSCM Build References:

OSCM Build And Push job
OSCM Pull And Start job
OSCM WS Tests INTERNAL job
OSCM WS Tests OIDC job
BES MASTER IT job

This change is

Added db script.

Reviewable status: 255 of 256 files reviewed, 1 unresolved discussion (waiting on @GoebelL)

Please add a schema test.


Dictionary<List<byte[]>, ICustomInterface> not serializing properly

I have been building my skills today. Thank you so much for this extensive package.
I have a dictionary that uses a key of List<byte[]> and a value of my custom Interface so:
Dictionary<List<byte[]>, IDispenseEntity>
The interface is implemented by 7 or so classes that implement other interfaces as well.
I have successfully serialized a List of the keys and I have successfully serialized a list of the the values. My issue seems to be that when I try to serialize a dictionary<List<byte[]>,IDispenseEntity> I just get the keys without any values. No errors.
Three questions:

Do you have any advice for this scenario?

In my case I have classes that implement IDispenseEntity. I am keeping all these in the dictionary as the value IDispenseEntity. When I serialize these I want the properties that are not called out in the ICustomInterface to be serialized as well. Is there something I need to do specifically for this?

What happens in the case of a class that has static fields?

Haha yeah I have to say @flycast when I saw that you are using byte[] as keys/elements I get a little nervous.  A dictionary with a list of elements as the key.  If I understand correctly that would have to be keyed on reference rather than the equality?  I am unclear how that would work.  It's almost like you would be better converting that list of bytes to a string and use that as the key instead.
However, I am interested in seeing what's happening here.  If you can provide a sample model set as you are having trouble with it, I can take a look into it for you.  For the IDispenseEntity provide 2-3 implementations.  The simpler the better. :)

Yeah, it’s a code smell isn’t it? Thanks for mentioning it. I actually stubbed my toe on that issue a few weeks ago. This is an add in for Solidworks. SW uses an immutable array of bytes as their unique ID for entities in their software. I considered converting them to something else but in the end I just implemented IEqualityComparer:
    public bool Equals(IDispenseEntity x, IDispenseEntity y)

    {

        if (x.Key.Count != y.Key.Count) return false;

        for (int i = 0; i < Key.Count; i++)

        {

            if (!x.Key[i].SequenceEqual(y.Key[i])) return false;

        }

        return true;

    }

I’d be happy to send a stripped down version of some of these files, I just don’t want to post it publicly.
From: Mike-E @.>
Sent: Tuesday, November 2, 2021 5:40 PM
To: ExtendedXmlSerializer/home @.>
Cc: Eric Snyder @.>; Mention @.>
Subject: Re: [ExtendedXmlSerializer/home] Dictionary<List<byte[]>, ICustomInterface> not serializing properly (Issue #565)
Haha yeah I have to say @flycast https://github.com/flycast  when I saw that you are using byte[] as keys/elements I get a little nervous. A dictionary with a list of elements as the key. If I understand correctly that would have to be keyed on reference rather than the equality? I am unclear how that would work. It's almost like you would be better converting that list of bytes to a string and use that as the key instead.
However, I am interested in seeing what's happening here. If you can provide a sample model set as you are having trouble with it, I can take a look into it for you. For the IDispenseEntity provide 2-3 implementations. The simpler the better. :)
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/ExtendedXmlSerializer/home/issues/565#issuecomment-958308278 , or unsubscribe https://github.com/notifications/unsubscribe-auth/AHWJGIJSK3QNGR2IHYWE3OTUKBZEZANCNFSM5HHRWHFA .
Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675  or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub .   https://github.com/notifications/beacon/AHWJGIOI2NMVJ4HRT5ZP2LLUKBZEZA5CNFSM5HHRWHFKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOHEPJ7NQ.gif

Cool glad to hear you got that figured out @flycast and good luck with those COM components. 😁
As for ignoring dictionary values, that is a tricky issue.  You can ignore the value but what about the key?  My recommendation is that if you can, serialize a list instead.  Here's a sketch:
https://github.com/ExtendedXmlSerializer/home/blob/6b3a62e9240e1b0f8136ef3ceb0768b66548444f/test/ExtendedXmlSerializer.Tests.ReportedIssues/Issue565Tests.cs#L12-L62
In here, I've created a Model class that stores the key.  This is beneficial as the key is only calculated once, whereas with a byte array, it has to be processed each and every time.  The string is a calculated representation of that byte array, and serves as a stored pointer, so it should be much faster when any lookups are made.
Additionally, I've made use of the EmitWhen method to elide a particular type if needed.  Then, once that is all read back in, I create a dictionary from it.  So stored as a list, read/used as a dictionary.  Let me know if you have any questions around this and I'll see if I can answer them.

I really appreciate the thoughts and advice. Are you concerned about the List<byte[]> performance in ExtendedXMLSerialization or just in general? Are there issues I am not catching on to beyond impliminting IEqualityComparer? I ask for my own learning.

Sure thing.  The issue is not serialization but runtime performance.  I could be mistaken but I am under the impression that a string is essentially a computed hash for a set of bytes.  This hash is further stored as an integer which is its hashcode.  So doing a lookup on that vs. doing a SequenceEquals should be much faster.  Performance is a tricky thing however so I could be mistaken, but I am pretty sure that is how it works. :)

Yeah. Now that I am getting Serialize to work I am getting errors deserializing. "Same key already exists". I have not made changes to the key to make it a List as that is some deeper surgery that might have some unintended consequences. I was hoping to avoid that if possible.
Here is the error:
Exception thrown: 'System.ArgumentException' in mscorlib.dll
System.ArgumentException: An item with the same key has already been added.
   at System.ThrowHelper.ThrowArgumentException(ExceptionResource resource)
   at System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boolean add)
   at Dispensing.Classes.EntityDatabase.Add(List`1 key, IDispenseEntity value)
   at ExtendedXmlSerializer.ReflectionModel.DictionaryAddDelegates.Add(IDictionary dictionary, DictionaryEntry entry)
   at ExtendedXmlSerializer.ReflectionModel.DictionaryAddDelegates.Add(Object dictionary, Object item)
   at ExtendedXmlSerializer.Core.ListAdapter`1.System.Collections.IList.Add(Object value)
   at ExtendedXmlSerializer.ContentModel.Collections.CollectionInnerContentHandler.IsSatisfiedBy(IInnerContent parameter)
   at ExtendedXmlSerializer.ContentModel.Content.InnerContentReader.Get(IFormatReader parameter)
   at ExtendedXmlSerializer.ContentModel.Members.Extensions.GetIfAssigned[T](IReader`1 this, IFormatReader reader)
   at ExtendedXmlSerializer.ExtensionModel.Xml.Read.Get(XmlReader parameter)
   at ExtendedXmlSerializer.ExtensionMethodsForSerialization.Deserialize[T](IExtendedXmlSerializer this, XmlReaderSettings settings, Stream stream)
   at Dispensing.DocumentHandler.HandleStorageReadAvailable(IXDocument doc)

Even though I wrote an equality comparer of my own to compare values rather than instances ExtendedXmlSerializer is using the default. I am guessing here but I think the byte[] is getting serialized and then unserialized in a way that causes the default equality method to think two are the same?

Ah indeed that's a tricky part as the Comparer property is a read-only property.  I would have to see the model to assist further, but if you are able to specify your own dictionary you can do something like this:
https://github.com/ExtendedXmlSerializer/home/blob/cdf14979034f523267968a0446f5f3d07390863a/test/ExtendedXmlSerializer.Tests.ReportedIssues/Issue565Tests_Extended.cs#L11-L38

If it's not one thing it's another.
Now I am getting incomplete deserialization. The stream is writing to the Solidworks file on file save. I also (for troubleshooting) serialize and write to a text file. When I load the SW file at a certain point an event fires that tells me I can read from the third party storage in the file. That s a stream. When I read I am only getting 6140 bytes and the xml appears to have an issue - deserialization does not complete. I am trying to determine for sure if the issue is:
Did my stream not completely write?
Is my stream not completely reading?
First I need to determine if I have completely written to the file.

I have the issue narrowed down I believe.  When I was working with smaller datasets the complete xml was being saved. When it was deserialized it deserialized complete. Once I started getting larger datasets then the xml was truncated when saving. I know this because as I tried to save large datasets the final file size did not grow. When I started deserializing since the xml was truncated the xml deserialization would throw various errors attributable to the xml being truncated. The errors were sometimes the same and sometimes different so it was confusing.
I have started looking in the direction of the Solidworks stuff - perhaps there is a data size limit?
Thanks for all your help.

That's a good question... I am not aware of any limits with ExtendedXmlSerializer as it does use the native System.Xml.XmlReader/System.Xml.XmlWriter to do its reading/writing.  I should also mention that in addition to the Deserialize extension method above there is a  complementing public string Serialize extension method.  I would recommend using that first before dealing with any streams as they do lead to problems as you are experiencing.  Usually, this has to do with calling Flush and other oddities.  That extension method accounts for all of that and provides the content as intended.  Or should. 😁

@Mike-E-angelo - I have learned a lot more. I hope I can be clear here.
I continue to have issues with my serializing. I was on a quest to see what the Solidworks file that I am serializing to has inside it after I serialize and save that file. When I did this I noticed the stream length is much larger than the data I am expecting so I read the stream byte by byte and appended it to a string with some commas:
var textReader = new StreamReader(deserializeStream);
deserializeStream.Position = 0;
while (!textReader.EndOfStream)
{
	contents += textReader.Read() + ", ";
}

The string variable contents ends up huge. It holds 234,612 commas so about the same number of bytes. All of the string looks like my current and complete data is at the front and then there is either old data with a 65279 at the beginning or a bunch of zeros. When I tried to convert this to text using this converter I'd get a error:
Error: Error: Invalid UTF-8 detected
Narrowing that down I am finding the value 65279 appearing in numerous places in the string. Ultimately what I discovered is that the stream is a LOT longer than my data and that a 65279 seems to appear right before old data.
When I looked closer at the XML that I thought was being truncated I discovered that the XML is actually complete but there is garbage data after my closing tag. My good, valid data goes from character 1 - 14733 and then there is old data directly after that. Here is an example of what the serializer is deserializing:
Starts:
<?xml version="1.0" encoding="utf-8"?><EntityDatabase><Item xmlns="https://ext
 //I clipped the data to save your eyes

Then around character 14700 close to the end:
<X>0.057737096938368315</X><Y>-0.0036400421496311855</Y><Z>0</Z></StartPoint></Value></Item></EntityDatabase>lserializer.github.io/v2" exs:item="unsignedByte">sDYAAAEAAAD/
// and then a lot more characters

Notice the ending tag </EntityDatabase>?

I am not sure how deserializing is supposed to work but what is happening is the data that the deserializer is getting is longer than the actual data. It seems like the deserializer is missing the ending XML tag. Plausible?

Hi @flycast I go back to using streams and how finicky they can be to use.  Are you sure you are flushing them properly?  Are you encountering this issue when you use the extension methods I mentioned earlier?  If you are encountering this issue with those extension methods I would say there is a bug worth further exploring here.  If you are not, then the problem is probably in how the streams are being handled.

@Mike-E-angelo - Thanks for getting back to me so quick.
I thought I was using the extension method:
var serializeStream = new ConfigurationContainer()
	.EnableImplicitTyping(typeof(EntityDatabase))
	.Create();

Debug.WriteLine($"Attempting to write {_db.Count} entities to {EntityStreamName} on save");
serializeStream.Serialize(str, _db);

I started having a weird error that looked like it was coming from xCad. I set Visual Studio to decompile code not my own. The error was actually coming from this code in ExtendedXmlSerializer.ExtensionModel.Xml.InstanceFormatter:
public string Get(object parameter)
{
Stream stream = _stream();
using (System.Xml.XmlWriter writer = _factory.Get(stream))
{
_serializer.Serialize(writer, parameter);
writer.Flush();
stream.Seek(0L, SeekOrigin.Begin);
return new StreamReader(stream).ReadToEnd();
}
}
Writer.Flush() is the one causing the exception. The exception is:
System.Runtime.InteropServices.COMException (0x80030005): Access Denied. (Exception from HRESULT: 0x80030005 (STG_E_ACCESSDENIED))
   at System.Runtime.InteropServices.ComTypes.IStream.Read(Byte[] pv, Int32 cb, IntPtr pcbRead)
   at Xarial.XCad.Toolkit.Data.ComStream.Read(Byte[] buffer, Int32 offset, Int32 count)
   at System.IO.StreamReader.ReadBuffer()
   at System.IO.StreamReader.ReadToEnd()
   at ExtendedXmlSerializer.ExtensionModel.Xml.InstanceFormatter.Get(Object parameter)
   at ExtendedXmlSerializer.ExtensionMethodsForSerialization.Serialize(IExtendedXmlSerializer this, Stream stream, Object instance)
   at Dispensing.DocumentHandler.HandleStorageWriteAvailable(IXDocument doc) in C:\Users\erics\source\repos\TestingEFClassLibrary\TestingEFClassLibrary\DocumentHandler.cs:line 251

No worries @flycast.  My hunch is that you have something going on with _factory.Get(stream).  The extension method does not use streams and handles all of that for you.  You should be able to do something like:
var subject = new ConfigurationContainer().EnableImplicitTyping(typeof(EntityDatabase)).Create();
string content = subject.Serialize(instance);

If content has some funny business going on inside of it, then that means it's something in ExtendedXmlSerializer.  Otherwise it could be how the stream is handled.  Streams are funny things so let's see if you are able to still see the issue with the above.

OK @Mike-E-angelo .
At every step I confirmed what was being deserialized by deserializing to a string and examining the string. It looked exactly as expected with no garbage before or after the XML.
I have very carefully confirmed that the stream handling and storage in xCad with .Net XmlSerializer works by starting with serializing very simple string and working up to a test class that had a single string property. They all serialized and unserialized well. At every step I confirmed what was being deserialized by deserializing to a string and examining the string. It looked exactly as expected with no garbage before or after the XML.
Next I switched to a more complicated class and ExtendedXmlSerializer.
I added int, double and bool properties to the class (code below).
If it serializes and deserializes properly I get a small bit of text prepended before the opening tag:
ï»¿<my opening xml tag>
If I serialize and deserialize just a single instance of TestSerialization class it serializes and deserializes fine. There is the prepended text though.
If I serialize and deserialize a small List with 5 instances it still serializes and deserializes just fine. IT still has the prepended test.
If I go to a large quantity of data then either the serialization or the deserialization quits working, not sure which.
What happens is the text that gets deserialized is now missing data at the front or the rear. Example of tring to perform the test on 1,000 elements. This is what I get:
stSerialization><MyString>----------</MyString><MyBool>false</MyBool><MyDouble>-1.7976931348623157E+308</MyDouble><MyInteger>975</MyInteger></ns1:TestSerialization><ns1:TestSerialization><MyString>**********</MyString><MyBool>true</MyBool><MyDouble>1.7976931348623157E+308</MyDouble><MyInteger>976</MyInteger></ns1:TestSerialization><ns1:TestSerialization><MyString>----------</MyString><MyBool>false</MyBool><MyDouble>-1.7976931348623157E+308</MyDouble><MyInteger>977</MyInteger></ns1:TestSerialization><ns1:TestSerialization><MyString>**********</MyString><MyBool>true</MyBool><MyDouble>1.7976931348623157E+308</MyDouble><MyInteger>978</MyInteger></ns1:TestSerialization><ns1:TestSerialization><MyString>----------</MyString><MyBool>false</MyBool><MyDouble>-1.7976931348623157E+308</MyDouble><MyInteger>979</MyInteger></ns1:TestSerialization><ns1:TestSerialization><MyString>**********</MyString><MyBool>true</MyBool><MyDouble>1.7976931348623157E+308</MyDouble><MyInteger>980</MyInteger></ns1:TestSerialization><ns1:TestSerialization><MyString>----------</MyString><MyBool>false</MyBool><MyDouble>-1.7976931348623157E+308</MyDouble><MyInteger>981</MyInteger></ns1:TestSerialization><ns1:TestSerialization><MyString>**********</MyString><MyBool>true</MyBool><MyDouble>1.7976931348623157E+308</MyDouble><MyInteger>982</MyInteger></ns1:TestSerialization><ns1:TestSerialization><MyString>----------</MyString><MyBool>false</MyBool><MyDouble>-1.7976931348623157E+308</MyDouble><MyInteger>983</MyInteger></ns1:TestSerialization><ns1:TestSerialization><MyString>**********</MyString><MyBool>true</MyBool><MyDouble>1.7976931348623157E+308</MyDouble><MyInteger>984</MyInteger></ns1:TestSerialization><ns1:TestSerialization><MyString>----------</MyString><MyBool>false</MyBool><MyDouble>-1.7976931348623157E+308</MyDouble><MyInteger>985</MyInteger></ns1:TestSerialization><ns1:TestSerialization><MyString>**********</MyString><MyBool>true</MyBool><MyDouble>1.7976931348623157E+308</MyDouble><MyInteger>986</MyInteger></ns1:TestSerialization><ns1:TestSerialization><MyString>----------</MyString><MyBool>false</MyBool><MyDouble>-1.7976931348623157E+308</MyDouble><MyInteger>987</MyInteger></ns1:TestSerialization><ns1:TestSerialization><MyString>**********</MyString><MyBool>true</MyBool><MyDouble>1.7976931348623157E+308</MyDouble><MyInteger>988</MyInteger></ns1:TestSerialization><ns1:TestSerialization><MyString>----------</MyString><MyBool>false</MyBool><MyDouble>-1.7976931348623157E+308</MyDouble><MyInteger>989</MyInteger></ns1:TestSerialization><ns1:TestSerialization><MyString>**********</MyString><MyBool>true</MyBool><MyDouble>1.7976931348623157E+308</MyDouble><MyInteger>990</MyInteger></ns1:TestSerialization><ns1:TestSerialization><MyString>----------</MyString><MyBool>false</MyBool><MyDouble>-1.7976931348623157E+308</MyDouble><MyInteger>991</MyInteger></ns1:TestSerialization><ns1:TestSerialization><MyString>**********</MyString><MyBool>true</MyBool><MyDouble>1.7976931348623157E+308</MyDouble><MyInteger>992</MyInteger></ns1:TestSerialization><ns1:TestSerialization><MyString>----------</MyString><MyBool>false</MyBool><MyDouble>-1.7976931348623157E+308</MyDouble><MyInteger>993</MyInteger></ns1:TestSerialization><ns1:TestSerialization><MyString>**********</MyString><MyBool>true</MyBool><MyDouble>1.7976931348623157E+308</MyDouble><MyInteger>994</MyInteger></ns1:TestSerialization><ns1:TestSerialization><MyString>----------</MyString><MyBool>false</MyBool><MyDouble>-1.7976931348623157E+308</MyDouble><MyInteger>995</MyInteger></ns1:TestSerialization><ns1:TestSerialization><MyString>**********</MyString><MyBool>true</MyBool><MyDouble>1.7976931348623157E+308</MyDouble><MyInteger>996</MyInteger></ns1:TestSerialization><ns1:TestSerialization><MyString>----------</MyString><MyBool>false</MyBool><MyDouble>-1.7976931348623157E+308</MyDouble><MyInteger>997</MyInteger></ns1:TestSerialization><ns1:TestSerialization><MyString>**********</MyString><MyBool>true</MyBool><MyDouble>1.7976931348623157E+308</MyDouble><MyInteger>998</MyInteger></ns1:TestSerialization><ns1:TestSerialization><MyString>----------</MyString><MyBool>false</MyBool><MyDouble>-1.7976931348623157E+308</MyDouble><MyInteger>999</MyInteger></ns1:TestSerialization></List>stSerialization><ns1:TestSerialization><MyString>**********</MyString><MyBool>true</MyBool><MyDouble>1.7976931348623157E+308</MyDouble><MyInteger>964</MyInteger></ns1:TestSerialization><ns1:TestSerialization><MyString>----------</MyString><MyBool>false</MyBool><MyDouble>-1.7976931348623157E+308</MyDouble><MyInteger>965</MyInteger></ns1:TestSerialization><ns1:TestSerialization><MyString>**********</MyString><MyBool>true</MyBool><MyDouble>1.7976931348623157E+308</MyDouble><MyInteger>966</MyInteger></ns1:TestSerialization><ns1:TestSerialization><MyString>----------</MyString><MyBool>false</MyBool><MyDouble>-1.7976931348623157E+308</MyDouble><MyInteger>967</MyInteger></ns1:TestSerialization><ns1:TestSerialization><MyString>**********</MyString><MyBool>true</MyBool><MyDouble>1.7976931348623157E+308</MyDouble><MyInteger>968</MyInteger></ns1:TestSerialization><ns1:TestSerialization><MyString>----------</MyString><MyBool>false</MyBool><MyDouble>-1.7976931348623157E+308</MyDouble><MyInteger>969</MyInteger></ns1:TestSerialization><ns1:TestSerialization><MyString>**********</MyString><MyBool>true</MyBool><MyDouble>1.7976931348623157E+308</MyDouble><MyInteger>970</MyInteger></ns1:TestSerialization><ns1:TestSerialization><MyString>----------</MyString><MyBool>false</MyBool><MyDouble>-1.7976931348623157E+308</MyDouble><MyInteger>971</MyInteger></ns1:TestSerialization><ns1:TestSerialization><MyString>**********</MyString><MyBool>true</MyBool><MyDouble>1.7976931348623157E+308</MyDouble><MyInteger>972</MyInteger></ns1:TestSerialization><ns1:TestSerialization><MyString>----------</MyString><MyBool>false</MyBool><MyDouble>-1.7976931348623157E+308</MyDouble><MyInteger>973</MyInteger></ns1:TestSerialization><ns1:TestSerialization><MyString>**********</MyString><MyBool>true</MyBool><MyDouble>1.7976931348623157E+308</MyDouble><MyInteger>974</MyInteger></ns1:TestSerialization><ns1:Te>/
I get about 6145 characters. This number is the limit I keep seeing over and over when I start serializing and deserializing lists over some size limit.
My serializing code:
                    using (Stream str = storage.TryOpenStream(EntityStreamName, true))
                    {

                        if (str is not null)
                        {
                            try
                            {
                                InventoryBuilder inventoryBuilder = new InventoryBuilder(_app);

                                List<TestSerialization> test = new List<TestSerialization>();
                                for (int i = 0; i < 500; i++)
                                {
                                    var newElement = new TestSerialization();
                                    if (i % 2 == 0)
                                    {
                                        newElement.MyString = "**********";
                                        newElement.MyDouble = Double.MaxValue;
                                        newElement.MyBool = true;
                                        newElement.MyInteger = i;
                                    }
                                    else
                                    {
                                        newElement.MyString = "----------";
                                        newElement.MyDouble = Double.MinValue;
                                        newElement.MyBool = false;
                                        newElement.MyInteger = i;
                                    }
                                    test.Add(newElement);
                                }

                                var serializer = new ConfigurationContainer()
                                    .EnableImplicitTyping(typeof(List<TestSerialization>))
                                    .Create();

                                serializer.Serialize(str, test);
                            }
                            catch (Exception ex)
                            {
                                Debug.WriteLine("Something bad happened when trying to write to the SW file.");
                                Debug.WriteLine(ex);
                            }

Test class:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Dispensing
{
    [Serializable]
    public class TestSerialization
    {
        public string MyString { get; set; }

        public bool MyBool { get; set; }

        public double MyDouble { get; set; }

        public int MyInteger { get; set; }
    }
}

I am still working with Solidworks to see if we can tell how much was written. I hold out zero hope though. Around 2015 they stopped storing their file format in plain text and went to some encrypted or compressed format. Also, Solidwoks has terrible support once you get  past the value added reseller level to Solidworks itself, terrible.

Thank you for the additional context and information @flycast.  I took your provided code and made a test for our suite which seems to pass just fine.  You can see this here:
https://github.com/ExtendedXmlSerializer/home/blob/e7604b656b4955ed1819922e8b5da1eb4ee58d95/test/ExtendedXmlSerializer.Tests.ReportedIssues/Issue565Tests_Extended_II.cs#L13-L44
I upped the count to 2,000 elements just to be safe and those seem to cycle with a serialization/deserialization just fine.
So, I think it's safe to say that the problem you are experiencing is in the stream and whatever is occurring in storage.TryOpenStream(EntityStreamName, true).  Again my recommendation would be to would try to use the extension methods outlined above first to see if you can get this working with that and then from there move into using the streams.  It is unclear from your report, but have you been able to use the extension methods at all?  I would be interested in hearing if you are able to use them in a way to get you sorted here.

@Mike-E-angelo - Thanks for your help as always.
I am writing third party data to SolidWorks files. SolidWorks has a very specific way they require you to do this. Solidworks was written starting in the early 90's so it's has been much, much easier to use the xCad add in - not only for the third party writing but for a lot of other reasons. I do see your point though - ExtendedXmlSerializer works without the complication of Solidworks. xCad works without the complication of ExtendedXmlSerializer. Solidworks prevents the user from examining their files.
I'm kind of stuck.
I have noticed that I can write a string to the SW file just fine. I think what I'll try is to serialize to a string and then write the string. On the read side read the string and then deserialize the xml string into the class.
Worst case scenario I'll write my data to a stand alone xml file.  At least I could persist the data I need though.

No problem @flycast I am mostly concerned obviously with discerning if there is a problem here with ExtendedXmlSerializer and if there is something that needs to be addressed on our end.  As for the other integrations, I am afraid I cannot be of much assistance as I have never heard of them before until your post.
I will say that streams are tricky beasts.  I actually stay away from them as much as possible they are so difficult to use and I always seem to encounter the same issues as you are describing (or worse).  Usually, it has to do with proper disposing/flushing, but not always.  You may also be simply experiencing a bug with one of the two integration points.
Have you tried reddit, perhaps?  Sometimes when I have problems with a product I do a quick glance there to see if there's a community that can assist.  Looks like there is one for SolidWorks here:
https://www.reddit.com/r/SolidWorks/
xCad is more dubious.  Looks like there's one for a cryptocurrency w/ the same name.  But that SolidWorks sub looks promising, with 38k members and looks rather active.  That might be a good starting point to reach out and see if someone with a better understanding of your scenario can provide more valuable feedback for you.
If you do manage to better define your issue and there is something I can do to further assist, please do let me know and I'll see if I can help you out. 👍

@Mike-E-angelo - I missed your last post.
Thanks for the pointer to the Reddit SW community. Since we have legal licenses we use the official Dessault community for SolidWorks.
xCad can be found here.
Perhaps I should start another issue on this:
I thought I had my issue all worked out by reading the stream as text and using the result to deserialize from. Everything seemed to be working properly but now I see that there is an issue with the List<byte[]>.
This gets a tad confusing. This is serializing/deserializing a dictionary and my dictionary key is a List<byte[]>. The dictionary key serializes/deserializes perfectly. Here is the XML for the dictionary key:
<Key>
	<Capacity>2</Capacity>
	<Array
		xmlns:exs="https://extendedxmlserializer.github.io/v2" exs:item="unsignedByte">AQIDBA==
	</Array>
	<Array
		xmlns:exs="https://extendedxmlserializer.github.io/v2" exs:item="unsignedByte">sDYAAAEAAAD//v8AAAAAABoAAAA=
	</Array>
</Key>

The object that is the dictionary value has a property that is also called Key. Property Key is also a List<byte[]> and happens to have the exact same values as the dictionary key. However, the XML looks different:
    <Key>
            <Capacity>2</Capacity>
            <Array exs:item="unsignedByte">AQIDBA==</Array>
            <Array exs:item="unsignedByte">sDYAAAEAAAD//v8AAAAAABoAAAA=</Array>
    </Key>

What I find strange is when the Object::Key deserializes back into the class instance the last entry in Key (Key[last]) ends up null. In my test data I have six entries in the dictionary. IN all sixe the Object::Key reads fine except for the last entry. In the last entry it is always null.
The obvious difference between the two xml is the second set does not have the xmlns:exs="https://extendedxmlserializer.github.io/v2" in it. I'm betting this is something in the config spec I am missing when I write it. Here is my current code for writing and reading:
Writing:
private void WriteToSolidWorksStream(IStorage storage, string streamName, object objToWrite)
{
	Type type = objToWrite.GetType();
	using (Stream str = storage.TryOpenStream(streamName, true))
	{
		Debug.WriteLine($"Attempting to write to: {streamName}");
		if (str is not null)
		{
			try
			{

				var serializer = new ConfigurationContainer()
					.EnableImplicitTyping(type)
					.Create();

				string content = serializer.Serialize(objToWrite);
				Debug.WriteLine($"Converted {content.Length} characters to write.");
				byte[] bytes = Encoding.ASCII.GetBytes(content);
				str.Write(bytes, 0, bytes.Length);
				Debug.WriteLine($"Wrote to {streamName} without exceptions.");
			}
			catch (Exception ex)
			{
				Debug.WriteLine("Something bad happened when trying to write to the SW file.");
				Debug.WriteLine(ex);
			}
		}
		else
		{
			Debug.WriteLine($"Failed to open stream {streamName} to write to.");
			throw new StreamDoesNotExistException();
		}
	}
}

Reading:
private T ReadFromSolidWorksStream<T>(IStorage storage, string streamName, string endingXMLTag)
{
	using var deserializeStream = storage.TryOpenStream(streamName, false);
	if (deserializeStream != null)
	{
		Debug.WriteLine($"Opened the stream {streamName} ok.");

		string characters = "";
		deserializeStream.Position = 0;
		byte[] buffer = new byte[deserializeStream.Length];
		int length = Convert.ToInt32(deserializeStream.Length);
		deserializeStream.Read(buffer, 0, length);
		characters = Encoding.UTF8.GetString(buffer);
		int index = characters.IndexOf(endingXMLTag);
		characters = characters.Substring(0, index + endingXMLTag.Length);
		Debug.WriteLine($"Retrieved {characters.Length} from the stream.");

		deserializeStream.Position = 0;
		var deserializer = new ConfigurationContainer()
			.EnableImplicitTyping(typeof(T))
			.Create();

		try
		{
			object obj = deserializer.Deserialize<T>(characters);
			Debug.WriteLine($"Deserialized the characters into the class {typeof(T)} ok.");
			return (T)obj;
		}
		catch (Exception ex)
		{
			Debug.WriteLine(ex);
			throw;
		}
	}
	else
	{
		Debug.WriteLine($"Failed to open stream {streamName} to read from.");
		throw new StreamDoesNotExistException($"{streamName} did not exist.");
	}
}

Sure @flycast if you can provide some more specific code here with just the ExtendedXmlSerializer-based code intact and the SolidWorks code removed, along with an example model class that you are using that reproduces the error I can take a further look into it for you.

For reference @flycast I put together a simple test here based on your explanation and it cycles as expected with 6 items:
https://github.com/ExtendedXmlSerializer/home/blob/a4a8bf408867b1a29131d635f9c8079ea6b79b86/test/ExtendedXmlSerializer.Tests.ReportedIssues/Issue565Tests_Extended_III.cs#L13-L110
The only consideration is the List<byte[]> being used as a key and I have that resolving w/ a comparer as discussed earlier.

Some days weeks months I just want to give up programming. I created a minimum reproducible example and the problem did not happen. Went back to my project and had the issue. Out of sheer frustration I Restarted everything and the issue is gone. I'll close this and before I start another I will:
Reboot.
CReate a minimum reproducible example to test just writing/reading to a text file
If after that I still have the issue then I'll reach out.
Thanks a ton for being so patient.

HA!  The ol' when-in-doubt-reboot!  I have not had to do that in a while, but seeing on how you are wrestling with code from a few decades ago I am not too surprised that did the trick. :)
No worries about the issues.  If you are able to limit something down to showcase a potential problem I will certainly take a look.  In any case, thank you for using ExtendedXmlSerializer. 👍


flying/floating vehicles in Town12 Carla 9.15

CARLA version: 0.9.14 and 0.9.15
Platform/OS:  Linux and Windows
Hello everyone, I am using CARLA map Town12 to collect some vehicular data while driving on a highway among with other cars. What happens is that in a very specific area of the map, like there was an invisible obstacle, all the non-hero vehicles start flying or floating, often creating accidents and generating unrealistic behaviours, resulting in distorted vehicle data.
I have tried using both 9.15 and 9.14, and I have no clue about how to solve this problem. Could it be the fault of the map itself? Does anyone ever faced this issue?
Here a video of the problem:
https://github.com/carla-simulator/carla/assets/24523864/d5ff6705-8068-41e3-9199-584702025923
Thank you in advance to all of you,
Regards,
Luca

I've never witnessed this before. Is this only happening in town12?

Hi @ray9583 , As far as I know this is happening in Town12 only. However, since I need a large map for my experiments I discarded the possibility to use a smaller one, but I will try simulating also on different maps and see whether the problem also occurs in other towns

I am also experiencing the same issue. It occurs at a specific location. Is there a solution?


if possible then replace mee6 by add server-log feature

This is possible

thinks to look for
1 Text channel created (voice, etc...)
2 Category created
3 Role updated
4  Role deleted
5 Channel permissions updated
6 Roel created
7 Server information updated!
and counting....

yes good

done


Sound service should not play multiple hover sounds simultaneously

When a cluster is hover on a map, all sounds associated with the cluster should not play simultaneously.
However, there are special circumstances when this behaviour is required.
Have an option that allows controlling this behaviour. By default, it should not play multiple sounds simultaneously.

The custom option that was added is: 'soundPlayMultipleOnFocus'


cerebral-debugger: init at 3.1.0

Motivation for this change
Cerebral is a javascript library that you might have to deal with if you are a front-end javascript developer. Making
it work in NixOS was not straight forward, since it uses electron under the hood, so it would be rather nice
having it already in nixpkgs.
Things done

[x ] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x ] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[x] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[x ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[x ] Ensured that relevant documentation is up to date
[x ] Fits CONTRIBUTING.md.

some CAVEATS:

The app.asar binary is used directly, hence this is not built from source
The cerebral is upgraded to electron 4, this version still have security issues

I have notified the author of the library about the security issues, using version 4 of electron instead of version 1 seems not affecting the app. I have used it quite a lot without any problems.
I would be happy to build this completely from source, but would need some guidance, as I have no experience with electron apps and very little experience using node on nixpkgs.

Result of nixpkgs-review pr 103027 run on x86_64-linux 1

1 package marked as broken and skipped:

cerebral-debugger

Thanks @SuperSandro2000 . I have fixed the things you commented I believe :-)
Hm.. I am not sure what is meant with the 1 package marked as broken and skipped part. The problem is that electron 4 is broken due to security issues. To enable it, you have to do this in ~/.config/nixpkgs/config.nix :
{
   permittedInsecurePackages = [
     "electron-4.2.12"
   ];
}

This is of course very unfortunate, but dealing with more or less legacy software often is ..

Hm.. I am not sure what is meant with the 1 package marked as broken and skipped part.

Probably the marked insecure part.

Result of nixpkgs-review pr 103027 run on x86_64-linux 1

1 package built:

cerebral-debugger

I don't like the idea of adding something that relies on something marked insecure. I think NUR could be a place for this but for nixpkgs it is to old. Sorry.


subsys: logging: Add MIPI sys-t support for v2 logging subsystem.

Adding functions log_output_msg2_syst_process and hexdump2_print to support v2 logging subsystem. Also adding v2 logging support for sys-t sample.

For the sample, you need to add v2 support and not replacing v1.

There are things to fix, please ensure that you don't break V1 implementation.

@ceolin made some changes and addressed the comments, can you please re-review? Thanks!!

Is this one superseded by #41277?

Is this one superseded by #41277?

Yes #41277 contains changes from this PR along with the support for MIPI_SYST_VPRINTF. I can close this one.


TypeError: 'NoneType' object is not iterable

Started having errors recently and I can't seem to download any images. I've tried with both member_id and image_id for the same artist, same error. Was working when last used less than a week ago. Doesn't seem to matter if it's a single or multi page.

Input: 2
Image ids: 69287623
Processing Image Id: 69287623
Member Name  : あづち涼
Member Avatar: https://i.pximg.net/user-profile/img/2018/05/19/20/03/07/14249162_933effdd8cc3f893c165376cc1a2f0ea.jpg
Member Token : komesama
Member Background : no_background
Title: 「ふふっ」漫画　その９
Tags : 漫画
Date : 2018-06-17 23:16:37+00:00
Mode : manga
Page Count : 2
Image URL : https://i.pximg.net/img-original/img/2018/06/18/08/16/37/69287623_p0.jpg
Filename  : D:\Tools\Pixiv Util\Dump\あづち涼 (643275)\69287623_p0 - 「ふふっ」漫画　その９.jpg
Traceback (most recent call last):
File "PixivUtil2.py", line 768, in process_image
TypeError: 'NoneType' object is not iterable
Error at process_image(): 69287623
Exception: (<type 'exceptions.TypeError'>, TypeError("'NoneType' object is not iterable",), <traceback object at 0x03651AA8>)
Dumping html to: Error medium page for image 69287623.html
Traceback (most recent call last):
File "PixivUtil2.py", line 2285, in main
File "PixivUtil2.py", line 2020, in main_loop
File "PixivUtil2.py", line 1503, in menu_download_by_image_id
File "PixivUtil2.py", line 768, in process_image
TypeError: 'NoneType' object is not iterable

Versions
version 20190416

Can you upload the file: Error medium page for image 69287623.html

I can open the page through my browser, but not through the html file
Error medium page for image 69287623.zip

can you upload the log file too? Try to delete the old one and rerun with the problem image then upload it here. Also upload the config.ini too (remember to remove the Authentication section).

Sorry, it took me a while to reply. I've tried downloading things again today and it seems like I'm not getting the error on the OP anymore, but I am getting the same OAuth on the other issue thread. #483
I'll close this issue now so you can focus on the other one.


Consider cleaning up the .git folder to reduce the repo size

A fresh clone currently takes a good amount of time because of binary files in the commit history.
You can identify them by running this oneliner: git rev-list --objects --all | grep -f <(git verify-pack -v .git/objects/pack/*.idx| sort -k 3 -n | cut -f 1 -d " " | tail -10)
1930a9b3151f0dd2b3ff245b9f77fb83407ede70 cmd/search/search
728a7a93403083b8fd06accde6c79d6ed8cd82a4 cmd/search/search
41265c8f26433009e979fa88ca50fa5395dc734a cmd/sidecar/metrics/metrics
8ba505fcf5bad430d4e3e7df1a9b38802260c9a2 cmd/sidecar/metrics/metrics
90a30e0e48d378088c3a594688da3b5a2b785ce3 cmd/sidecar/metrics/metrics
e82d16d2e603ec8b6f58aef127d871331c150306 cmd/crud/crud
97e1a3e5cf9b86726d960fb30d8cf05189cb681b cmd/crud/crud
fc933685fe478c4686f4733e4f8d01242906cc1e cmd/crud/crud
218ad79408ee5e4e2f71748ecccfc8e1d4f54133 cmd/crud/crud
099217f9bae311d3159d43af64e2ccac8076d315 cmd/crud/crud

Filename   Git id
crud     | 218ad794 (7,6 MB), 099217f9 (7,6 MB), ...
metrics  | 90a30e0e (5,8 MB), 8ba505fc (6,2 MB), 41265c8f (6,2 MB)
search   | 1930a9b3 (11,8 MB), 728a7a93 (12,4 MB)

Ugh, so having them in the history but not in the current commit is causing this problem?

The .git folder. yes, let's do that for sure. What are the steps. Should that even be comitted?

You could use git's own tooling to rewrite history but I prefer to use https://rtyley.github.io/bfg-repo-cleaner/

git clone --mirror git@github.com:ardanlabs/service.git
java -jar bfg-1.13.0.jar --strip-blobs-bigger-than 5M service.git
git reflog expire --expire=now --all && git gc --prune=now --aggressive
git push

Jump on Slack with me.

I invited you to be an admin on the repo. I would appreciate you going ahead and cleaning the repo. I would guess you have everything you already need on your local machine to do this.

Okay, I run it locally, but I'm not allowed to push the changes
...
error: failed to push some refs to 'git@github.com:ardanlabs/service.git'

Here is a summary of the commits that need to be rewritten:
Cleaning
--------

Found 425 commits
Cleaning commits:       100% (425/425)
Cleaning commits completed in 355 ms.

Updating 75 Refs
----------------

	Ref                  Before     After
	----------------------------------------
	refs/heads/master  | a74467bc | 4166dacf
	refs/heads/search  | e2847918 | 06ea2345
	refs/pull/1/head   | 1a8c67b9 | 7339a816
	refs/pull/10/head  | 8cbb513d | 66748bb1
	refs/pull/103/head | 278e8db5 | 6f5632b4
	refs/pull/105/head | cb820a99 | 92cf7e95
	refs/pull/107/head | 25a26416 | d14b93cf
	refs/pull/11/head  | 83475807 | 49183b83
	refs/pull/116/head | 2967b8dc | 9e773339
	refs/pull/13/head  | 6450cf46 | 95962e99
	refs/pull/2/head   | 42c695ed | a2d674e4
	refs/pull/20/head  | 91b8a27e | 9123810f
	refs/pull/20/merge | 400b068d | 777cdfe0
	refs/pull/22/head  | 1a0c27bd | 48a92e70
	refs/pull/23/head  | 2c01ff1c | e0ca930d
	...

Updating references:    100% (75/75)
...Ref update completed in 47 ms.

Commit Tree-Dirt History
------------------------

	Earliest                                              Latest
	|                                                          |
	DDmmmDmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmDDDDmmDDmDmmmmmmmmm

	D = dirty commits (file tree fixed)
	m = modified commits (commit message or parents changed)
	. = clean commits (no changes to file tree)

	                        Before     After
	-------------------------------------------
	First modified commit | 2bd554d3 | e745b9e0
	Last dirty commit     | ba7e9579 | b41a4695

You have full rights to the repo.

Assuming you pulled the latest before you did this?

Yes, I get a lot of these errors:
! [remote rejected] refs/pull/1/head -> refs/pull/1/head (deny updating a hidden ref)
I'm going to clone the repo once more and give it another go

If it doesn't work, I can try.

It won't let me push. Worked on my own fork though. You should be able to push.

I am in a position to try it now, I also ran the commands.

$ git push
fatal: remote error:
  You can't push to git://github.com/ardanlabs/service.git
  Use https://github.com/ardanlabs/service.git

Maybe try this on the actual clone I have?

yes

Well, I can't push this either

~/code/service/service.git on  master ⌚ 11:01:22
$ git remote rm origin
Note: Some branches outside the refs/remotes/ hierarchy were not removed;
to delete them, use:
  git branch -d master
  git branch -d search

~/code/service/service.git on  master ⌚ 11:05:07
$ git remote add origin git@github.com:ardan/service.git

~/code/service/service.git on  master ⌚ 11:06:05
$ git status
fatal: this operation must be run in a work tree

~/code/service/service.git on  master ⌚ 11:06:11
$ git push origin master
The authenticity of host 'github.com (<IP_ADDRESS>)' can't be established.
RSA key fingerprint is SHA256:nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'github.com,<IP_ADDRESS>' (RSA) to the list of known hosts.
<EMAIL_ADDRESS>Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

~/code/service/service.git on  master ⌚ 11:00:32
$ git push origin master
fatal: remote error:
  You can't push to git://github.com/ardanlabs/service.git
  Use https://github.com/ardanlabs/service.git

~/code/service/service.git on  master ⌚ 11:01:22
$ git remote rm origin
Note: Some branches outside the refs/remotes/ hierarchy were not removed;
to delete them, use:
  git branch -d master
  git branch -d search

~/code/service/service.git on  master ⌚ 11:05:07
$ git remote add origin git@github.com:ardan/service.git

~/code/service/service.git on  master ⌚ 11:06:05
$ git status
fatal: this operation must be run in a work tree

~/code/service/service.git on  master ⌚ 11:06:11
$ git push origin master
The authenticity of host 'github.com (<IP_ADDRESS>)' can't be established.
RSA key fingerprint is *****************************************
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'github.com,<IP_ADDRESS>' (RSA) to the list of known hosts.
<EMAIL_ADDRESS>Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

That is different from what I get. Try to clone like this:
git clone --mirror git@github.com:ardanlabs/service.git

$ git clone --mirror git@github.com:ardanlabs/service.git
Cloning into bare repository 'service.git'...
Warning: Permanently added the RSA host key for IP address '<IP_ADDRESS>' to the list of known hosts.
<EMAIL_ADDRESS>Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

I guess I need to setup a key for authentication?

$ git push
Enumerating objects: 869, done.
Counting objects: 100% (654/654), done.
Delta compression using up to 16 threads
Compressing objects: 100% (337/337), done.
Writing objects: 100% (523/523), 137.78 KiB | 34.44 MiB/s, done.
Total 523 (delta 240), reused 406 (delta 168)
remote: Resolving deltas: 100% (240/240), completed with 37 local objects.
To https://github.com/ardanlabs/service.git
 ! [remote rejected] refs/pull/1/head -> refs/pull/1/head (deny updating a hidden ref)
 ! [remote rejected] refs/pull/10/head -> refs/pull/10/head (deny updating a hidden ref)

The other option is to start clean. I can remove this repo and re-create it. I know I lose history but ....

Looks to be related github and pull requests. Not sure how to solve that https://github.com/rtyley/bfg-repo-cleaner/issues/36#issuecomment-37877829

I could force the push. Worse case I need to destroy the repo and re-create it

None of that worked either.

Okay, looks like I was able to push some of the change. Throwing away your local copy and cloning the updated repo now no longer contains the binaries.
So you can remove my admin access again.

WOW, excellent. I removed your admin rights.  Thanks

Sorry to say, but some of the binaries are back in the history. I guess that is caused by the latest merge commit.
git rev-list --objects --all | grep -f <( git verify-pack -v .git/objects/pack/*.idx | sort -k 3 -n | cut -f 1 -d " " | tail -10 )

3dccf364e74a70734ced3d0595ff13da7cbb40a8 vendor/gopkg.in/mgo.v2/session.go
a29728094ecb24a6460fb534c5398d41a9b25157 vendor/gopkg.in/mgo.v2/bson/decimal_test.go
41265c8f26433009e979fa88ca50fa5395dc734a cmd/sidecar/metrics/metrics
8ba505fcf5bad430d4e3e7df1a9b38802260c9a2 cmd/sidecar/metrics/metrics
90a30e0e48d378088c3a594688da3b5a2b785ce3 cmd/sidecar/metrics/metrics
e82d16d2e603ec8b6f58aef127d871331c150306 cmd/crud/crud
97e1a3e5cf9b86726d960fb30d8cf05189cb681b cmd/crud/crud
fc933685fe478c4686f4733e4f8d01242906cc1e cmd/crud/crud
218ad79408ee5e4e2f71748ecccfc8e1d4f54133 cmd/crud/crud
099217f9bae311d3159d43af64e2ccac8076d315 cmd/crud/crud

OMG!  My repo require a push and I didn't understand why. So I guess I should have re-cloned after what you did?

Do you want to try again, and then I will re-clone my repo locally?

I am trying again

Try it now @tullo. I think I fixed it.

Let me have a look ...

Looks good again @ardan-bkennedy :+1:

Future work on the repo should be based on a fresh clone!

Yea, I am a newbie with git.  Learning everyday. I have a fresh clone.  Excellent news.


[SMALLFIX] fix typo

Can one of the admins verify this patch?

ok to test

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/9311/
Test PASSed.

LGTM. Thanks for the fix.


Make Wash daemon part of the shell session

When wash is run, it starts a shell as a child process where all the action happens. It then stays running as a daemon to handle Wash-specific requests through FUSE and the socket API. However if it needs to prompt for input, it has trouble because it's TTY is not the same as the one handling input (the child shell).
We previously addressed that by temporarily transferring control of input to the Wash daemon, but that had some problems

it only worked when a plugin requested input using Wash's helper
if the process that triggered the plugin activity tried to do
something with stdin - like MacVim appears to on startup - it would fail

Reparent the Wash daemon to have a new session under the new shell so they share the same TTY. Prompts for input now work wherever they're triggered from. MacVim still behaves a little strangely if you get a prompt when opening it, but I'm not sure what to do about it.
Fixes #623.
Signed-off-by: Michael Smith<EMAIL_ADDRESS>

Actually resolved #297.


Add RandomStorageLocationSelectorStrategy and MostAvailableSizeStorageLocationSelectorStrategy

@clintropolis @sashidhar

@zhenxiao How is the MostAvailableSizeStorageLocationSelectorStrategy different from the existing LeastBytesUsedStorageLocationSelectorStrategy ?

Hi @sashidhar existing LeastBytesUsedStorageLocationSelectorStrategy only considers current used size. In an heterogeneous env, some machines might have bigger capacity, so even if their current used size is bigger than other machines, their available space is bigger. so introduce MostAvailableSizeStorageLocationSelectorStrategy to consider available size.


rewriteCellMagic is over aggressive

The regex being used to match and comment out lines that contain cell magics is too aggressive. I think this one will do what's expected.
/^[^#\s]\s%%/gm
I actually created a PR but I can't submit because I'm not a contributor. :)
Because of this issue, any cell that contains code lines that have any %%'s in it will be entirely commented out. This is a problem if the user has a line in the cell like "# this is not a cell magic %%" or (in my case) "# To add a new cell, type '#%%'"

The power to PR should now be yours. 😃

Thanks for the PR! I added a test to show it works.


Uploading a file with 1059 SNPs through curation app

I have been trying to upload a file with 1059 SNPs through the old curation app since this morning but it fails -- i think the system is too slow and times out
13:29
if I send the spreadsheet over, would please a dev try uploading from the backend?
13:33
http://ves-ebi-e4.ebi.ac.uk:8080/gwas/curation/studies/63318243/associations/getUploadResults
http://ves-ebi-e4.ebi.ac.uk:8080/gwas/curation/studies/63318243/associations

Thank you @ala-ebi for sorting this problem for me. All my SNPs are now uploaded.
There was a duplication for rs2294487 in the database SNP table that prevented my list to get uploaded.


Add linked list for GPDMA on STM32H5

For the transmission of continuous data streams, concepts such as double buffering are often used with the STHM32H7. These manage two separate buffers. The GPDMA unit of the STM32H5 enables linked lists for scheduled DMA transfers.
My approach offers the possibility to manage several memory areas of the same size and type. The list can have an open end or be linked to the beginning.
A major disadvantage of the linked list concept is that it is not easy to find out which memory areas have already been filled. The asynchronous query with await would also be terminated after the first transfer.
However, the implementation could be used to emulate double buffering, which enables continuous data transfer with hardware support.

can you fix CI? rebase on latest main should fix it.


Use effect only shadow for MessageCard component

Problem/Feature
We've recently found an issue on Beacon/Messages where the MessageCard component wasn't resizing correctly in some cases. After tracking down the bug, we found that it was coming from the HSDS v3.9.3 release, where we added the depth component and refactored MessageCard to use the depth mixins.
In particular, the issue comes from the will-change: box-shadow; property that seems to be affecting the order in which property changes are calculated. Since we have a dynamic-height iframe that cares about when the height property changes, we were running into a conflict there.
My fix was to add a d600Effect depth constant that only applies the box-shadow styles.
Question
I can't say I fully understand the will-change property, but I've noticed we're using it in a few places within HSDS, and since MDN suggests that we should only use this as a last resort, I was wondering if there was a particular reason why we sometimes use this optimization? Also, when we do need it, should we be applying it and removing it with JS as MDN suggests instead of doing it with CSS?

@plbabin assigning this one to you since JP is out of the office I believe.

Pull Request Test Coverage Report for Build 3438

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 94.592%

Totals

Change from base Build 3437:
0.0%

Covered Lines:
6339

Relevant Lines:
6562

💛  - Coveralls


Proposal for updated install instructions

λ. go get github.com/mattn/goreman

go get: installing executables with 'go get' in module mode is deprecated.
	Use 'go install pkg@version' instead.
	For more information, see https://golang.org/doc/go-get-install-deprecation
	or run 'go help get' or 'go help install'.

λ. go install github.com/mattn/goreman

go install: version is required when current directory is not in a module
	Try 'go install github.com/mattn/goreman@latest' to install the latest version

feel free to merge (i dont see the option to do so myself)

Thank you


Load paste in backend if possible

Once we have this https://github.com/ipfs/go-ipfs/issues/1819 we can do everything from the frontend, leaving only rendering initial page load to the backend

Nah, better load directly from frontend, if user wants to use local daemon


Openlayers cause runtime error when using in Angular Universal application

Describe the bug
I have an Angular Universal application (Server side rendering), when use Openlayers inside my app, it cause the error: window is not define. Even though i have mock the window object with Domino.
As far as I see, the Openlayers call some browser API (window, document in this case) directly, for ex: in has.js, Openlayers try to get devicePixelRation via window
To Reproduce
Steps to reproduce the behavior:

Create an angular universal app
Install openlayers package
Serve the application
CLI will throw the error

Expected behavior
Openlayers can work nicely with Server side rendering application

Duplicate of #8846.


Update HL7v2 to FHIR to HL7v2 DataType Mappings: ST (NON PRIMITIVES)

User Story

As a ReportStream engineer,
I want to update the ReportStream HL7v2 -> FHIR and FHIR -> HL7v2 mappings for the ST HL7v2 data type per the mapping inventory
so that I can ensure data does not get dropped during translation and enable the creation of mappings of ORU-R01 segments that reference this HL7v2 DataType.
Description/Use Case

Given the ORU-R01 context, this HL7v2 DataType can map to the following resources (the sub list shows where exactly in what mapping file the DataType mapping appears in):

[ ] xhtml

[ ] PV2[Encounter]-PV2-12

[ ] Identifier

[ ] NK1[RelatedPerson]-NK1-37
[ ] HL7 Data Type - FHIR R4_ EIP[Identifier-PlacerAssignedIdentifier] - Sheet1-EIP.1

[ ] CodeableConcept

[ ] HL7 Data Type - FHIR R4_ DLN[Identifier] - Sheet1-DLN.1

Testing
The unit tests for the mappings of this DataType DO NOT have to cover every since segment a particular HL7v2->FHIR / FHIR->HL7v2 mapping appears in. It is sufficient to pick a representative segment and base the DataType mapping tests off of it. The unit tests should verify a segment containing a particular mapping maps correctly to HL7v2->FHIR and FHIR->HL7v2, having a test case for each condition or logic outlined in the mapping inventory for a particular mapping.
Acceptance Criteria

[ ] Mappings outlined in the Description of ticket have been created/updated per the mapping inventory
[ ] Unit Tests created per testing strategy
[ ] Any new RS extensions have FHIR examples documented

I think this is a no-op. These mappings should be performed inline during the segment mappings.


Fix a memory leak in json tuple

This fixes a fairly obvious memory leak in GpuJsonTuple. Not sure why it was not fixed when the code was first written.

build


[REV-2541] Enable CodeQL and add the status badge to README

Current dependencies on/for this PR:

main

PR #15

PR #16   👈

This comment was auto-generated by Graphite.

Codecov Report
All modified lines are covered by tests :white_check_mark:

Comparison is base (1897f99) 92.42% compared to head (289d483) 92.42%.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@                     Coverage Diff                     @@
##           prevent_concurrent_gh_runs      #16   +/-   ##
===========================================================
  Coverage                       92.42%   92.42%
===========================================================
  Files                               5        5
  Lines                             198      198
===========================================================
  Hits                              183      183
  Misses                             15       15

Flag
Coverage Δ

unittests
92.42% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

Merge activity

Oct 11, 6:00 PM: @sumeet-revefi started a stack merge that includes this pull request via Graphite.


Set-DbaTempDbConfiguration will not relocate files

Before submitting a bug report:

[x] Ensure you are able to reproduce it on the latest released version (we release often)
[x] Verified this bug is not already reported in an issue
[x] Verified errors are not related to permissions
[x] Can reproduce in a clean PowerShell session (clean = powershell -NoProfile)

Steps to Reproduce

#Show current TempDB files:
Invoke-DbaSqlCmd -SqlInstance SqlServer01 -Query "SELECT * FROM sys.master_Files WHERE database_id=db_id('tempdb')" | FT

#Set TempDB to reside at P:\TempDB (for data AND logs):
Set-DbaTempDbConfiguration -SqlInstance SqlServer01 -DataPath P:\TempDB -LogPath P:\TempDB -DataFileSizeMB 4096 -DataFileGrowthMB 1024 -DataFileCount 4 -Verbose

Expected Behavior
In this example, all of my data files live at P:\TempDB, but my log file is still on C-drive. Expected behaviour: to set TempDB config to relocate the Log files (as well as the Data files) to be at P:\TempDB
Actual Behavior

Throws a warning to say that the Size is the same - However, the location is different so would expect it to spot that and relocate. I would understand better if the function was called Set-DbaTempDbSize that it would only deal with size, but this suggests it's the whole configuration of TempDB
Environmental data

PowerShell

Name
Value

PSVersion
5.1.14409.1012

PSEdition
Desktop

PSCompatibleVersions
{1.0, 2.0, 3.0, 4.0...}

BuildVersion
10.0.14409.1012

CLRVersion
4.0.30319.42000

WSManStackVersion
3.0

PSRemotingProtocolVersion
2.3

SerializationVersion
<IP_ADDRESS>

SQL Server:

Microsoft SQL Server 2012 (SP3) (KB3072779) - 11.0.6020.0 (X64)   Oct 20 2015 15:36:27   Copyright (c) Microsoft Corporation  Enterprise Edition (64-bit) on Windows NT 6.3  (Build 9600: ) (Hypervisor)

Confirmed this is because of this section of code
            Stop-Function -Message "Current tempdb not suitable to be reconfigured. The current tempdb is the same size as the specified DataFileSizeMB."
            return
        }```


how  ---  not in all_model_checkpoint_paths. Manually adding it.

mldl@ub1604:~/ub16_prj/AnyQ/tools/simnet/train/tf$ python tf_simnet.py
/usr/local/lib/python2.7/dist-packages/h5py/init.py:36: FutureWarning: Conversion of the second argument of issubdtype from float to np.floating is deprecated. In future, it will be treated as np.float64 == np.dtype(float).type.
from ._conv import register_converters as _register_converters
2018-08-27 13:11:13.811799: I tensorflow/core/platform/cpu_feature_guard.cc:137] Your CPU supports instructions that this TensorFlow binary was not compiled to use: SSE4.1 SSE4.2 AVX AVX2 FMA
2018-08-27 13:11:13.861404: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:892] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2018-08-27 13:11:13.861738: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1030] Found device 0 with properties:
name: GeForce GTX 950M major: 5 minor: 0 memoryClockRate(GHz): 1.124
pciBusID: 0000:01:00.0
totalMemory: 3.95GiB freeMemory: 3.55GiB
2018-08-27 13:11:13.861796: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1120] Creating TensorFlow device (/device:GPU:0) -> (device: 0, name: GeForce GTX 950M, pci bus id: 0000:01:00.0, compute capability: 5.0)
save model epoch1
INFO:tensorflow:model/pointwise/cnn.epoch1 is not in all_model_checkpoint_paths. Manually adding it.
INFO:tensorflow:model/pointwise/cnn.final is not in all_model_checkpoint_paths. Manually adding it.
mldl@ub1604:~/ub16_prj/AnyQ/tools/simnet/train/tf$

you have to manually add path "model"

where ? any document

you can run following command:
cd AnyQ/tools/simnet/train/tf
mkdir model

mldl@ub1604:~/ub16_prj/AnyQ/tools/simnet/train/tf$ tree
.
├── data
│   ├── convert_test_pointwise_data
│   ├── convert_train_pointwise_data
│   ├── test_pairwise_data
│   ├── test_pointwise_data
│   ├── train_pairwise_data
│   └── train_pointwise_data
├── examples
│   ├── bow-pairwise.json
│   ├── bow-pointwise.json
│   ├── cnn-pairwise.json
│   ├── cnn-pointwise.json
│   ├── knrm-pairwise.json
│   ├── knrm-pointwise.json
│   ├── lstm-pairwise.json
│   ├── lstm-pointwise.json
│   ├── mmdnn-pairwise.json
│   ├── mmdnn-pointwise.json
│   ├── mvlstm-pairwise.json
│   ├── mvlstm-pointwise.json
│   ├── pyramid-pairwise.json
│   └── pyramid-pointwise.json
├── layers
│   ├── init.py
│   ├── init.pyc
│   ├── tf_layers.py
│   └── tf_layers.pyc
├── log
│   ├── tensorflow.log
│   └── tensorflow.log.wf
├── losses
│   ├── init.py
│   ├── simnet_loss.py
│   └── simnet_loss.pyc
├── model
│   └── pointwise
│       ├── checkpoint
│       ├── cnn.epoch1.data-00000-of-00001
│       ├── cnn.epoch1.index
│       ├── cnn.epoch1.meta
│       ├── cnn.final.data-00000-of-00001
│       ├── cnn.final.index
│       └── cnn.final.meta
├── nets
│   ├── bow.py
│   ├── init.py
│   ├── knrm.py
│   ├── lstm.py
│   ├── matchpyramid.py
│   ├── mlpcnn.py
│   ├── mlpcnn.pyc
│   ├── mm_dnn.py
│   └── mvlstm.py
├── README.md
├── run_infer.sh
├── run_train.sh
├── tf_simnet.py
├── tools
│   ├── evaluate.py
│   ├── init.py
│   ├── tf_record_reader.py
│   └── tf_record_writer.py
└── utils
├── controler.py
├── controler.pyc
├── converter.py
├── converter.pyc
├── datafeeds.py
├── datafeeds.pyc
├── init.py
├── init.pyc
├── utility.py
└── utility.pyc
10 directories, 63 files
mldl@ub1604:~/ub16_prj/AnyQ/tools/simnet/train/tf$ rm -rf model/pointwise/*
mldl@ub1604:~/ub16_prj/AnyQ/tools/simnet/train/tf$ python tf_simnet.py
/usr/local/lib/python2.7/dist-packages/h5py/init.py:36: FutureWarning: Conversion of the second argument of issubdtype from float to np.floating is deprecated. In future, it will be treated as np.float64 == np.dtype(float).type.
from ._conv import register_converters as _register_converters
2018-08-27 16:29:46.218606: I tensorflow/core/platform/cpu_feature_guard.cc:137] Your CPU supports instructions that this TensorFlow binary was not compiled to use: SSE4.1 SSE4.2 AVX AVX2 FMA
2018-08-27 16:29:46.292434: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:892] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2018-08-27 16:29:46.292769: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1030] Found device 0 with properties:
name: GeForce GTX 950M major: 5 minor: 0 memoryClockRate(GHz): 1.124
pciBusID: 0000:01:00.0
totalMemory: 3.95GiB freeMemory: 3.55GiB
2018-08-27 16:29:46.292803: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1120] Creating TensorFlow device (/device:GPU:0) -> (device: 0, name: GeForce GTX 950M, pci bus id: 0000:01:00.0, compute capability: 5.0)
save model epoch1
INFO:tensorflow:model/pointwise/cnn.epoch1 is not in all_model_checkpoint_paths. Manually adding it.
INFO:tensorflow:model/pointwise/cnn.final is not in all_model_checkpoint_paths. Manually adding it.
mldl@ub1604:~/ub16_prj/AnyQ/tools/simnet/train/tf$

INFO:tensorflow:model/pointwise/cnn.epoch1 is not in all_model_checkpoint_paths. Manually adding it.
INFO:tensorflow:model/pointwise/cnn.final is not in all_model_checkpoint_paths. Manually adding it.
these log is info, t will not affect normal operation of program

mldl@ub1604:~/ub16_prj/AnyQ/tools/simnet/train/tf$
mldl@ub1604:~/ub16_prj/AnyQ/tools/simnet/train/tf$ mkdir -p model/pointwise/cnn.epoch1
mldl@ub1604:~/ub16_prj/AnyQ/tools/simnet/train/tf$ mkdir -p model/pointwise/cnn.final
mldl@ub1604:~/ub16_prj/AnyQ/tools/simnet/train/tf$ python tf_simnet.py
/usr/local/lib/python2.7/dist-packages/h5py/init.py:36: FutureWarning: Conversion of the second argument of issubdtype from float to np.floating is deprecated. In future, it will be treated as np.float64 == np.dtype(float).type.
from ._conv import register_converters as _register_converters
2018-09-25 15:27:18.090945: I tensorflow/core/platform/cpu_feature_guard.cc:137] Your CPU supports instructions that this TensorFlow binary was not compiled to use: SSE4.1 SSE4.2 AVX AVX2 FMA
2018-09-25 15:27:18.147595: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:892] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2018-09-25 15:27:18.147896: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1030] Found device 0 with properties:
name: GeForce GTX 950M major: 5 minor: 0 memoryClockRate(GHz): 1.124
pciBusID: 0000:01:00.0
totalMemory: 3.95GiB freeMemory: 3.67GiB
2018-09-25 15:27:18.147914: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1120] Creating TensorFlow device (/device:GPU:0) -> (device: 0, name: GeForce GTX 950M, pci bus id: 0000:01:00.0, compute capability: 5.0)
save model epoch1
INFO:tensorflow:model/pointwise/cnn.epoch1 is not in all_model_checkpoint_paths. Manually adding it.
INFO:tensorflow:model/pointwise/cnn.final is not in all_model_checkpoint_paths. Manually adding it.
mldl@ub1604:~/ub16_prj/AnyQ/tools/simnet/train/tf$


Failed to pack with version 0.12

What happened?
After upgrading to the version 0.12 , the dotnet publish failed. If we specify the version 0.11.3, no error occur.
The problem occur when  we have project A that reference Project B that reference Project C.
If we use the same dotnet sdk 6.0.200 and run the dotnet publish witht the same parameter , we don't encounter any errors.

What were you attempting to do?
We try to pack our dotnet application with gcr.io/paketo-buildpacks/dotnet-core buildpack v0.12

What did you expect to happen?

That the command succeeded

What was the actual behavior? Please provide log output, if possible.

Build Configuration

What platform (pack, kpack, tekton buildpacks plugin, etc.) are you
using? Please include a version.

pack build testpublish --env BP_DOTNET_PROJECT_PATH=./src/WebApi --env BP_DOTNET_PUBLISH_FLAGS="--verbosity=detailed"
pack --version
0.23.0+git-0db2c77.build-3056

What buildpacks are you using? Please include versions.
gcr.io/paketo-buildpacks/dotnet-core:0.12.0

What builder are you using? If custom, can you provide the output from pack inspect-builder <builder>?
paketobuildpacks/builder:base

Can you provide a sample app or relevant configuration (buildpack.yml,
nginx.conf, etc.)?
here is a sample project https://github.com/ManuDinicola/NetPublishedFailed

Checklist

[x] I have included log output.
[x] The log output includes an error message.
[x] I have included steps for reproduction.

@sophiewigmore  yes the sdk is 6.0.200

Ok, I've tried to reproduce this error by creating a new app that looks just like https://github.com/paketo-buildpacks/dotnet-publish/tree/main/integration/testdata/multiple_projects_msbuild, but uses .NET Core 6. When I built it with .NET Core buildpack v0.12.0, it used SDK 6.0.200 and the build succeeded. I wasn't able to reproduce the error.
Would you be able to point me to an app I could use to try to reproduce this? If not your actual app, maybe a simple example that could be used?

you can take this app.
https://github.com/ManuDinicola/NetPublishedFailed
The problem occur when we have multiple project where Project A reference Project B and Project B  reference Project C

Great, I just tried out a few builds with this app.

Test 1 I built this app with .NET Core buildpack v0.12. It used .NET Core SDK 6.0.22 and failed, but with a different output than you saw. Can you add a comment with the full .NET Publish output you're seeing?
I saw the build pass with .NET Core v0.11.3 using .NET Core SDK 6.0.102

The only discernible difference is the .NET Core SDK version being used as you pointed out.. I think we'll need to investigate this further

publish.log
Here are the log

We've (myself and @fg-j) been looking into this, but haven't been able to pinpoint the source of the issue. @macsux - looping you in incase you've seen something like this before?

I've reproduced this with a different project that has a similar dependency structure: https://github.com/blogifierdotnet/Blogifier
Building with buildpack version 0.11.3 succeeds, but with the latest buildpack, it fails.

See my comment on this issue in https://github.com/paketo-buildpacks/rfcs/pull/185#issuecomment-1116342724

I've also reproduced this issue trying to build components of https://github.com/Squidex/squidex