Separate Storage

I believe there was a discussion about it should be possible to use the framework just by dragging in a single file (currently FFNN.swift). Right now, FFNN conforming to Storage is preventing this from happening. What's the issue with moving this snippet into Storage.swift?

That is a good idea - I still hope to maintain independence between modules, although as the library grows it will become more difficult.  Feel free to submit a pull request with this change, so you can get credit for it :)

That would cause anyone that needs Storage to import FFNN.swift even if they don't need it. Maybe a better solution would be a third file FFNNStorage.swift.

Will do :)

@mipstian You're right - I overlooked that. Creating a new file is a possibility, but of course that means each class will need its own 'Class'+Storage.swift file, which eventually might get cluttered.  I'm open to suggestions but I'm not sure if that's really preferable to keeping the dependency as it is.

Personally I don't think the one-file import should be a high priority - especially with an official package manager on the horizon. It's not a big deal to import the whole library, and most third-party library code isn't single-file so most people are used to it. Submodules, CocoaPods, Carthage, etc.
I'd actually take it one step further and split more. In my similar library I had 5-6 files in a group to describe the equivalent of the FFNN class: Network (just the data and initializers), NetworkPropagation, NetworkTraining, ActivationFunctions, you get the idea. Enabling Whole Module Optimization would take care of preserving performance across the split files.
Maybe that's just me, but having small, focused files helps me understand and evolve the codebase faster.

With the Swift Package Manager, avoiding dependencies between classes will become less of a priority for the reasons @mipstian mentioned.  That said, we won't go to the extreme either.  While splitting the neural network into multiple files might have worked in your project, in my experience it can quickly become unmaintainable.
I've merged Pull #17 with the Storage extension in its own file, but we'll consider this an exception.  I agree that it's the best solution for right now.

I agree with both sides, and as such don't have anything to say :stuck_out_tongue: Thanks for merging the PR!


Cross-ARK Data Transfer

Can some one tel me how to set up Cross-ARK Data Transfer on my servers?

See https://github.com/FezVrasta/ark-server-tools/issues/578#issuecomment-244608572


Add docstrings to tests

Docstrings should be used for most tests. We should have a human readable explanation of what the test does.
I have mostly tried to give relevant names to the test itself, but this is obviously not enough.

I'll first do this on the unit tests.


Can't query solr

When querying with solr-express i'm always running in a Aggregate exception.
The aggregate exception itself contains the following message:
Unknown to resolve solr query request
Requested instruction:
http://localhost:8983/solr/collection/select
{
  "params": {
    "echoParams": "none",
    "wt": "json",
    "indent": "off",
    "defType": "edismax",
    "q.alt": "*:*",
    "df": "id"
  },
  "query": "*:*",
  "sort": "score desc",
  "fields": [
    "*,score"
  ],
  "limit": 10,
  "offset": 0
}

Server message:
The remote server returned an error:
(500) null:org.apache.solr.common.SolrException: Unexpected method type: GET-X
	at org.apache.solr.servlet.HttpSolrCall.remoteQuery(HttpSolrCall.java:548)
	at org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:448)
	at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:345)
	at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:296)
	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1691)
	at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:582)
	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
	at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548)
	at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:226)
	at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1180)
	at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:512)
	at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
	at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1112)
	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
	at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:213)
	at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:119)
	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:134)
	at org.eclipse.jetty.server.Server.handle(Server.java:534)
	at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:320)
	at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:251)
	at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:273)
	at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:95)
	at org.eclipse.jetty.io.SelectChannelEndPoint$2.run(SelectChannelEndPoint.java:93)
	at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.executeProduceConsume(ExecuteProduceConsume.java:303)
	at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.produceConsume(ExecuteProduceConsume.java:148)
	at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.run(ExecuteProduceConsume.java:136)
	at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:671)
	at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:589)
	at java.lang.Thread.run(Unknown Source)

Running this query with postman works fine the query is build up like this:
IEnumerable<SolrDocument> docs;
this.documentCollection.Select().Execute().Document(out docs);

What am i doing wrong? Everything is correctly initialized and updating (indexing) files works..
Running with these nuget packages:
"SolrExpress.Core": "4.2.1",
"SolrExpress.Solr5": "4.2.1"

Using Solr: 6.4.1
And using dotnet core:
$ dotnet --info
.NET Command Line Tools (1.0.0-preview2-1-003177)

Product Information:
 Version:            1.0.0-preview2-1-003177
 Commit SHA-1 hash:  a2df9c2576

Runtime Environment:
 OS Name:     Windows
 OS Version:  10.0.14393
 OS Platform: Windows
 RID:         win10-x64

I've also downgraded from Solr 6.4 to 5.5.0 and still get the notice:
The remote server returned an error: (501) Method GET-X is not defined in RFC 2068 and is not supported by the Servlet API
What is this mysterious GET-X method? i've never heard of it while reading the RFC i saw it's an extension method? (please explain) RFC 2068
I've added the following question at stackoverflow

Hi @Baklap4 !
About GET-X, in my first code version (using .Net 4.0) was necessary use GET-X argument to pass body content in request. Actually I'm reviewing Solr base code (version 5) and I will check if this verb is necessary :)
About your error.... hum.... I don't know what's happen. :'(
Some questions:

Are you using Solr in cloud mode?
What is Java version of Solr's server?
Can you complete your code?

IEnumerable<SolrDocument> docs;
this.documentCollection.Select() <What do you do here???> .Execute().Document(out docs);

To get back to your questions:

Are you using Solr in cloud mode?

i'm using both Solr instances in cloud mode no prompt (solr.cmd -e cloud -nopromt)

What is Jaava version of Solr's Server

Currently installed java version is:
$ java -version
java version "1.8.0_121"
Java(TM) SE Runtime Environment (build 1.8.0_121-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.121-b13, mixed mode)

Solr itself is running on Java version: Oracle Corporation Java HotSpot(TM) 64-Bit Server VM 1.8.0_121 25.121-b13

Can you complete  your code?

This code is complete. What this does is selecting every document in the collection. I've tested this by changing the GET-X method request to a POST request (which allows a postbody in C#) and i got the correct results back.
What currently is happening is the following lines of code in Solrconnection.cs are failing:
https://github.com/solr-express/solr-express/blob/master/src/SolrExpress.Solr5/SolrConnection.cs#L128-L131

Hi,
I'm having the same issue when I try to do a basic query, do we need to build our own version of the Solr5 dll and replace GET-X with POST for this to work until it's fixed at source?
Thanks
Si

@TheFairey changes this line: https://github.com/solr-express/solr-express/blob/master/src/SolrExpress.Solr5/SolrConnection.cs#L150
to use POST as a method request instead of GET-X.

@Baklap4 Thanks, I tried that but then it complained elsewhere so I changed it to UseSolr4 and for now it works however now I need to find out what the situation is with highlighting support.

Hi @Baklap4 and @TheFairey
Sorry for delay :)
I will fix this very soon.

Hi @Baklap4  and @TheFairey
Try v4.2.2

Hi @diegobrum just tried this and changed UseSolr4() to UseSolr5() and still getting the GET-X error, UseSolr4() still works though.
Sorry

Hi @TheFairey
What is your .Net version?

@diegobrum Target framework is 4.5.2

Hi @TheFairey
Try v4.2.3
Now works in .Net 4.5 :)

@diegobrum No joy but different error now:
System.AggregateException: One or more errors occurred. ---> Flurl.Http.FlurlHttpException: Request to http://mysearch failed. Cannot send a content-body with this verb-type. ---> System.Net.ProtocolViolationException: Cannot send a content-body with this verb-type.
at System.Net.HttpWebRequest.CheckProtocol(Boolean onRequestStream)
at System.Net.HttpWebRequest.BeginGetRequestStream(AsyncCallback callback, Object state)
at System.Net.Http.HttpClientHandler.StartGettingRequestStream(RequestState state)
at System.Net.Http.HttpClientHandler.PrepareAndStartContentUpload(RequestState state)
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Flurl.Http.Configuration.FlurlMessageHandler.d__1.MoveNext()
--- End of inner exception stack trace ---
at Flurl.Http.Configuration.FlurlMessageHandler.d__1.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Flurl.Http.FlurlClient.d__28.MoveNext()
--- End of inner exception stack trace ---
at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
at System.Threading.Tasks.Task1.GetResultCore(Boolean waitCompletionNotification)    at System.Threading.Tasks.Task1.get_Result()
at SolrExpress.Solr5.SolrConnection.Get(SecurityOptions options, String handler, String data)
at SolrExpress.Core.Search.SolrSearch`1.Execute()
at SearchTest.Program.Main(String[] args) in C:\Users\TheFairey\Documents\Visual Studio 2015\Projects\SearchTest\SearchTest\Program.cs:line 52
---> (Inner Exception #0) Flurl.Http.FlurlHttpException: Request to http://mysearch failed. Cannot send a content-body with this verb-type. ---> System.Net.ProtocolViolationException: Cannot send a content-body with this verb-type.
at System.Net.HttpWebRequest.CheckProtocol(Boolean onRequestStream)
at System.Net.HttpWebRequest.BeginGetRequestStream(AsyncCallback callback, Object state)
at System.Net.Http.HttpClientHandler.StartGettingRequestStream(RequestState state)
at System.Net.Http.HttpClientHandler.PrepareAndStartContentUpload(RequestState state)
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Flurl.Http.Configuration.FlurlMessageHandler.d__1.MoveNext()
--- End of inner exception stack trace ---
at Flurl.Http.Configuration.FlurlMessageHandler.d__1.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Flurl.Http.FlurlClient.d__28.MoveNext()<---
at SearchTest.Program.Main(String[] args) in C:\Users\TheFairey\Documents\Visual Studio 2015\Projects\SearchTest\SearchTest\Program.cs:line 52
---> (Inner Exception #0) Flurl.Http.FlurlHttpException: Request to http://hlawsolr1dev.cloudapp.net:3284/solr/hyperlaw/select failed. Cannot send a content-body with this verb-type. ---> System.Net.ProtocolViolationException: Cannot send a content-body with this verb-type.
at System.Net.HttpWebRequest.CheckProtocol(Boolean onRequestStream)
at System.Net.HttpWebRequest.BeginGetRequestStream(AsyncCallback callback, Object state)
at System.Net.Http.HttpClientHandler.StartGettingRequestStream(RequestState state)
at System.Net.Http.HttpClientHandler.PrepareAndStartContentUpload(RequestState state)
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Flurl.Http.Configuration.FlurlMessageHandler.d__1.MoveNext()
--- End of inner exception stack trace ---
at Flurl.Http.Configuration.FlurlMessageHandler.d__1.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Flurl.Http.FlurlClient.d__28.MoveNext()<---

Hi @TheFairey
Try v4.2.4

Hi @diegobrum Latest exception:
Activated	Event	Time	Duration	Thread
Exception: Exception thrown: 'System.MissingMethodException' in SolrExpress.Core.dll ("Method not found: 'Flurl.Url Flurl.Url.SetQueryParam(System.String, System.Object)'."). Exception thrown: 'System.MissingMethodException' in SolrExpress.Core.dll ("Method not found: 'Flurl.Url Flurl.Url.SetQueryParam(System.String, System.Object)'.")	0.45s		[25952]

Hi! @TheFairey
I don't find any bug in code in my local environment.
Please, try run this project.
https://github.com/solr-express/solr-express/tree/master/sample/Sample.WebApi.Net46

My environment
Java
java version "1.8.0_121"
Java(TM) SE Runtime Environment (build 1.8.0_121-b13)
Java HotSpot(TM) Client VM (build 25.121-b13, mixed mode)

.Net
.NET version 1.0.0-preview2-1-003177
.NET Command Line Tools (1.0.0-preview2-1-003177)

Product Information:
Version:            1.0.0-preview2-1-003177
Commit SHA-1 hash:  a2df9c2576

Solrs
solr-5.5.0
solr-6.4.2

Runtime Environment:
OS Name:     Windows
OS Version:  10.0.14393
OS Platform: Windows
RID:         win10-x64

Hi @diegobrum I updated the Sample and changed the solr url and added Any for qt and df fields to match mine and it seemed to over encode the request, on my solr (5.0.0) I saw this:
"GET /solr/mysearch/select?json=%7B%0D%0A%20%20%22params%22%3A%20%7B%0D%0A%20%20%20%20%22qt%22%3A%20%22search%22%2C%0D%0A%20%20%20%20%22df%22%3A%20%22text%22%2C%0D%0A%20%20%20%20%22echoParams%22%3A%20%22none%22%2C%0D%0A%20%20%20%20%22wt%22%3A%20%22json%22%2C%0D%0A%20%20%20%20%22indent%22%3A%20%22off%22%2C%0D%0A%20%20%20%20%22defType%22%3A%20%22edismax%22%2C%0D%0A%20%20%20%20%22q.alt%22%3A%20%22%2A%3A%2A%22%0D%0A%20%20%7D%2C%0D%0A%20%20%22limit%22%3A%203%2C%0D%0A%20%20%22query%22%3A%20%22%2A%3A%2A%22%2C%0D%0A%20%20%22offset%22%3A%200%2C%0D%0A%20%20%22sort%22%3A%20%22score%20desc%22%2C%0D%0A%20%20%22fields%22%3A%20%5B%0D%0A%20%20%20%20%22%2A%2Cscore%22%0D%0A%20%20%5D%0D%0A%7D HTTP/1.1" 400 167
If I add UseSolr4() instead and link to the Solr4 project and then run it everything works fine and I see a request of
"GET /solr/mysearch/select?qt=search&rows=3&df=text&start=0&echoParams=none&wt=json&indent=off&defType=edismax&q.alt=:&fl=,score&sort=score%20desc&q=:&q=:* HTTP/1.1" 200 22882

Works well in .Net Core
Closes in favor to #204

@diegobrum
Those patches broke updates for me.
4.2.1 works, 4.2.4 does not

Sorry to get back to you this late.
Just tried out the patch, however i'm still getting errors..
While running it gives me a 400 Bad Request
Does flurl understand sending a json body while using a get method?
Flurl.Http.FlurlHttpException: Request to http://localhost:8983/solr/schothorst-documents-development/select failed with status code 400 (Bad Request).
   at Flurl.Http.Configuration.FlurlMessageHandler.<SendAsync>d__1.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Runtime.CompilerServices.ConfiguredTaskAwaitable`1.ConfiguredTaskAwaiter.GetResult()
   at System.Net.Http.HttpClient.<FinishSendAsync>d__58.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Flurl.Http.FlurlClient.<SendAsync>d__28.MoveNext()

Aggregate exception:
System.AggregateException: One or more errors occurred. (Request to http://localhost:8983/solr/schothorst-documents-development/select failed with status code 400 (Bad Request).) ---> Flurl.Http.FlurlHttpException: Request to http://localhost:8983/solr/schothorst-documents-development/select failed with status code 400 (Bad Request).
   at Flurl.Http.Configuration.FlurlMessageHandler.<SendAsync>d__1.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Runtime.CompilerServices.ConfiguredTaskAwaitable`1.ConfiguredTaskAwaiter.GetResult()
   at System.Net.Http.HttpClient.<FinishSendAsync>d__58.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Flurl.Http.FlurlClient.<SendAsync>d__28.MoveNext()
   --- End of inner exception stack trace ---
   at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
   at System.Threading.Tasks.Task`1.GetResultCore(Boolean waitCompletionNotification)
   at SolrExpress.Solr5.SolrConnection.Get(SecurityOptions options, String handler, String data) in C:\Users\aspeiard\Desktop\solr-express-master\src\SolrExpress.Solr5\SolrConnection.cs:line 52
   at SolrExpress.Core.Search.SolrSearch`1.Execute() in C:\Users\aspeiard\Desktop\solr-express-master\src\SolrExpress.Core\Search\SolrSearch.cs:line 235
   at Schothorst.Documents.Web.Controllers.DocumentsController.<Search>d__10.MoveNext() in C:\Users\aspeiard\Documents\Visual Studio 2015\Projects\Schothorst\app\Schothorst.Documents.Web\Controllers\DocumentsController.cs:line 68
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.<InvokeActionMethodAsync>d__27.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.<InvokeNextActionFilterAsync>d__25.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.Rethrow(ActionExecutedContext context)
   at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
   at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.<InvokeNextResourceFilter>d__22.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.Rethrow(ResourceExecutedContext context)
   at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
   at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.<InvokeAsync>d__20.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Builder.RouterMiddleware.<Invoke>d__4.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Builder.Extensions.MapMiddleware.<Invoke>d__3.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware`1.<Invoke>d__18.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware`1.<Invoke>d__18.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware`1.<Invoke>d__18.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware`1.<Invoke>d__18.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware`1.<Invoke>d__18.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware`1.<Invoke>d__18.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware`1.<Invoke>d__18.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware`1.<Invoke>d__18.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Localization.RequestLocalizationMiddleware.<Invoke>d__4.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore.MigrationsEndPointMiddleware.<Invoke>d__5.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore.DatabaseErrorPageMiddleware.<Invoke>d__6.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore.DatabaseErrorPageMiddleware.<Invoke>d__6.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Diagnostics.DeveloperExceptionPageMiddleware.<Invoke>d__7.MoveNext()
---> (Inner Exception #0) Flurl.Http.FlurlHttpException: Request to http://localhost:8983/solr/schothorst-documents-development/select failed with status code 400 (Bad Request).
   at Flurl.Http.Configuration.FlurlMessageHandler.<SendAsync>d__1.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Runtime.CompilerServices.ConfiguredTaskAwaitable`1.ConfiguredTaskAwaiter.GetResult()
   at System.Net.Http.HttpClient.<FinishSendAsync>d__58.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Flurl.Http.FlurlClient.<SendAsync>d__28.MoveNext()<---

Hi @Baklap4 and @hheexx
I had reviewed this in v5, but in v4 you must use Solr4 (v.4.2.1) if (and only if) you using .Net 4.x.
Sorry about this :'(

@diegobrum
My original question was about dotnet core, using solr5... whilst using solr5 i'm getting this

Also.
.NET Core 1.1
solr-expresss solr5
Solr 6.3.0

When changing it from a GET to a POST request like suggested for when using tools such as postman, i'm getting an error at converting types it seems:
System.NullReferenceException: 'Object reference not set to an instance of an object.'

whilst this is the rsponse in postman when directly querying solr:
{
  "responseHeader": {
    "zkConnected": true,
    "status": 0,
    "QTime": 1
  },
  "response": {
    "numFound": 15,
    "start": 0,
    "maxScore": 1,
    "docs": [
      {
        "id": "C:\\Users\\aspeiard\\Documents\\Visual Studio 2015\\Projects\\Schothorst\\files\\SFR_2014-07_Aminoacid_requirement_piglets_and_immune_response.pdf",
        "created": [
          "2017-02-23T10:41:27Z"
        ],
        "last_modified": [
          "2017-02-23T10:36:12Z"
        ],
        "content": [
          "Some content"
        ],
        "resourcename": [
          "SFR_2014-07_Aminoacid_requirement_piglets_and_immune_response.pdf"
        ],
        "_version_":<PHONE_NUMBER>698690048,
        "score": 1
      },
      {
        "id": "C:\\Users\\aspeiard\\Documents\\Visual Studio 2015\\Projects\\Schothorst\\files\\SFR_2014-06_Effects_AME-ranking_V20_for_poultry.pdf",
        "created": [
          "2017-02-23T10:41:27Z"
        ],
        "last_modified": [
          "2017-03-09T15:18:14Z"
        ],
        "content": [
          "Some content"
        ],
        "resourcename": [
          "SFR_2014-06_Effects_AME-ranking_V20_for_poultry.pdf"
        ],
        "_version_":<PHONE_NUMBER>589638144,
        "score": 1
      },
      {
        "id": "C:\\Users\\aspeiard\\Documents\\Visual Studio 2015\\Projects\\Schothorst\\files\\SFR_2014-07_Aminozuren_behoefte_en_imuunrespons.pdf",
        "created": [
          "2017-03-09T14:30:50Z"
        ],
        "last_modified": [
          "2017-03-09T14:30:50Z"
        ],
        "content": [
          "Some content"
        ],
        "resourcename": [
          "SFR_2014-07_Aminozuren_behoefte_en_imuunrespons.pdf"
        ],
        "_version_":<PHONE_NUMBER>799353344,
        "score": 1
      },
      {
        "id": "C:\\Users\\aspeiard\\Documents\\Visual Studio 2015\\Projects\\Schothorst\\files\\SFR_2014-08_Feeding_Scheme_of_Sows_VFA.pdf",
        "created": [
          "2017-03-09T15:22:24Z"
        ],
        "last_modified": [
          "2017-03-09T15:22:24Z"
        ],
        "content": [
          "Some content"
        ],
        "resourcename": [
          "SFR_2014-08_Feeding_Scheme_of_Sows_VFA.pdf"
        ],
        "_version_":<PHONE_NUMBER>909453824,
        "score": 1
      },
      {
        "id": "C:\\Users\\aspeiard\\Documents\\Visual Studio 2015\\Projects\\Schothorst\\files\\SFR_2016-09_Different_growth_development_boar_and_gilt_piglets_FMG_24-3-16_website.pdf",
        "created": [
          "2017-02-23T10:41:29Z"
        ],
        "last_modified": [
          "2017-02-23T10:36:40Z"
        ],
        "content": [
          "Some content"
        ],
        "resourcename": [
          "SFR_2016-09_Different_growth_development_boar_and_gilt_piglets_FMG_24-3-16_website.pdf"
        ],
        "_version_":<PHONE_NUMBER>794451968,
        "score": 1
      },
      {
        "id": "C:\\Users\\aspeiard\\Documents\\Visual Studio 2015\\Projects\\Schothorst\\files\\SFR_2016-08_NCSU_III_Leghennenrassen_Data_productie_van_17_-_89_weken_27-07-2016.pdf",
        "created": [
          "2017-02-23T10:41:29Z"
        ],
        "last_modified": [
          "2017-02-23T10:36:37Z"
        ],
        "content": [
          "Some content"
        ],
        "resourcename": [
          "SFR_2016-08_NCSU_III_Leghennenrassen_Data_productie_van_17_-_89_weken_27-07-2016.pdf"
        ],
        "_version_":<PHONE_NUMBER>711614464,
        "score": 1
      },
      {
        "id": "C:\\Users\\aspeiard\\Documents\\Visual Studio 2015\\Projects\\Schothorst\\files\\SFR_2016-09_Verschillen_technische_resultaten_beren_en_gelten_MO_24-3-16_websitex.pdf",
        "created": [
          "2017-02-23T10:41:29Z"
        ],
        "last_modified": [
          "2017-02-23T10:36:42Z"
        ],
        "content": [
          "Some content"
        ],
        "resourcename": [
          "SFR_2016-09_Verschillen_technische_resultaten_beren_en_gelten_MO_24-3-16_websitex.pdf"
        ],
        "_version_":<PHONE_NUMBER>885678080,
        "score": 1
      },
      {
        "id": "C:\\Users\\aspeiard\\Documents\\Visual Studio 2015\\Projects\\Schothorst\\files\\SFR_2014-17_Amino_acid_requirements_in_white_pekin_ducks_23-10-2014.pdf",
        "created": [
          "2017-02-23T10:41:28Z"
        ],
        "last_modified": [
          "2017-02-23T10:36:22Z"
        ],
        "content": [
          "Some content"
        ],
        "resourcename": [
          "SFR_2014-17_Amino_acid_requirements_in_white_pekin_ducks_23-10-2014.pdf"
        ],
        "_version_":<PHONE_NUMBER>501899264,
        "score": 1
      },
      {
        "id": "C:\\Users\\aspeiard\\Documents\\Visual Studio 2015\\Projects\\Schothorst\\files\\SFR_2014-17_Aminozuurbehoeften_van_Witte_Peking_Eenden_Deel_I.pdf",
        "created": [
          "2017-02-23T10:41:28Z"
        ],
        "last_modified": [
          "2017-02-23T10:36:26Z"
        ],
        "content": [
          "Some content"
        ],
        "resourcename": [
          "SFR_2014-17_Aminozuurbehoeften_van_Witte_Peking_Eenden_Deel_I.pdf"
        ],
        "_version_":<PHONE_NUMBER>394944512,
        "score": 1
      },
      {
        "id": "C:\\Users\\aspeiard\\Documents\\Visual Studio 2015\\Projects\\Schothorst\\files\\SFR_2014-18_Restfractie_van_vetten_07-10-2014.pdf",
        "created": [
          "2017-02-23T10:41:29Z"
        ],
        "last_modified": [
          "2017-02-23T10:36:20Z"
        ],
        "content": [
          "Some content"
        ],
        "resourcename": [
          "SFR_2014-18_Restfractie_van_vetten_07-10-2014.pdf"
        ],
        "_version_":<PHONE_NUMBER>614096896,
        "score": 1
      }
    ]
  }
}

It fails on the Created
        "created": [
          "2017-02-23T10:41:27Z"
        ],

Saying the value is null

In my case, works well. I will investigate this, but, for now, use Solr4 package instead
.NET Core 1.1
solr-expresss solr5 (v.4.2.1)
Solr 6.3.0 (no cloud)

@hheexx @diegobrum
I've digged into the code a bit again.
In the Get method you use JsonConvert.DeserializeObject. While using this with a POST method it'll work.
In the post method you don'tuse JsonConvert.DeserializeObect on the data (string) i've added this and all worked as suspected.
By changing these lines i made it work for me:
SolrExpress.Solr5.SolrConnection
public string Get(SecurityOptions options, string handler, string data)
        {
            var url = this.HostAddress
              .AppendPathSegment(handler);

            this.SetAuthentication(options, url);

#if NETCORE
                return url
                .SendJsonAsync(HttpMethod.Post, JsonConvert.DeserializeObject(data))
                .Result
                .Content
                .ReadAsStringAsync()
                .Result;
#else
            return url
                .SetQueryParam("json", data)
                .GetStringAsync()
                .Result;
#endif
        }

public string Post(SecurityOptions options, string handler, string data)
        {
            var url = this.HostAddress
                .AppendPathSegment(handler);

            this.SetAuthentication(options, url);
            return url
               .PostJsonAsync(JsonConvert.DeserializeObject(data))
               .ReceiveString()
               .Result;
        }

In my case, works well. I will investigate this, but, for now, use Solr4 package instead
.NET Core 1.1
solr-expresss solr5 (v.4.2.1)
Solr 6.3.0 (no cloud)

Ahhh I forgot to say i was running in cloud mode. I'll test once again in no cloud mode!


Using php-cgi as cgi is not working

Wed, 23 Mar 2016 18:23:05 +0100 | ACCESS | http       | url:'http://<IP_ADDRESS>/info.php' cgiscript:'/www/info.php' | CGI
2016/03/23 18:23:05 cgi: bogus header line: Security Alert! The PHP CGI cannot be accessed directly.
2016/03/23 18:23:05 cgi: missing required Content-Type in headers

Could you post how you're running websocketd? (it's command line)

Adding cgi.force_redirect = 0 to php.ini

Adding #!/usr/bin/php-cgi a the top of every php file

Now lets start the fun:
./websocketd --port=80 --cgidir=/alpha_www  php-cgi

Why would you need php-cgi with websocketd and not with say apache?


feat: add extra-files parameter

Adds a new extra-files optional parameter that is passed through to the release please action. This allows the bumping of versions in arbitrary files using the generic updater (they need to be annotated with a special comment).
use case

What is the extra file in the use case pr?

I found it, https://github.com/agrc/electrofishing/blob/dev/.github/workflows/push.yml#LL38C35-L38C35


Content-Type header throwing error

When viewing the example with iCal attachment here:
...with-ical/src/pages/api/send.ts
line 21 shows the Content-Type header being set:

However, when I run I am getting an error saying {   data: null,   error: {     statusCode: 500,     message: "Duplicate header 'Content-Type'.",     name: 'application_error'   } }
Any reason that might be? Sending without specifying this Content-Type header is related to this issue, I believe: https://github.com/resend/resend-node/issues/198

This has been a blocker for us using Resend. Have yet to find a way around it.

hey there, we've updated our examples and made a few improvements on how we handle the specific content-type.
as you can see here: https://github.com/resend/resend-examples/blob/main/with-ical/src/pages/api/send.ts#L39 it should be sent in the attachments array instead of "globally" in the email headers, this should correctly make all email clients to render the iCal attachment correctly!
closing this issue but feel free to reopen or ping if you still see any issues 👍


Update "support" details in the footer $30$

Please change the personal details to:
Marta Masternak Key Account Manager +49 30 2555 987
https://res.cloudinary.com/ecommerceberlin/image/upload/v1636131391/Awards website/received_1343879069033116.jpg

c1646a3bbfa9f7b7c4dc18b1ed504fc41e0a978d


local environment dont appear in chrome it does appear in edge

Before you start please confirm the following.

[X] Yes, I've searched similar issues on GitHub.
[X] Yes, I've checked whether this issue is covered in the Portainer documentation or knowledge base.

Problem Description
I switched from cloudflare tunnel to nginx proxy manager.
Now in chrome the local environment does not appear (i needed to clean all data for the domain name in chrome to be able to work, something was stuck), incognito mode works fine, edge too.
Expected Behavior
To load the local environment and be able to use it
Actual Behavior
If i open the same url in chrome incognito, or edge it does work right.
Yes i did purge cache (and everything for this url)

Steps to Reproduce
I did try portainer/portainer-ce:2.20.1 , 2.19.5 and 2.19.4
Changed configuration to enable http access to the docker because of a conflict of SSL with nginx and portainer.
After that started doing this.
#nginx configuration

Portainer logs or screenshots
Im unable to connect using sh, ash or bash, how can i get in the console to retrive the logs?
Portainer version
2.20.1
Portainer Edition
Community Edition (CE)
Platform and Version
docker 25.0.4
OS and Architecture
ubuntu
Browser
google chrome (latest)
What command did you use to deploy Portainer?
#portainer docker compose:

  GNU nano 6.2                                                   docker-compose.yml
version: '3'
services:
  portainer:
    image: portainer/portainer-ce:latest
    container_name: portainer
    command: -H unix:///var/run/docker.sock
    ports:
      - "8000:8000"
      - "9000:9000"
    volumes:
      - "/var/run/docker.sock:/var/run/docker.sock"
      - "portainer_data:/data"
      - "/:/host"
    restart: always
    labels:
      - io.portainer.accesscontrol.public
      #-  http-enabled
    networks:
      - frontend

volumes:
  portainer_data:

networks:
  frontend:
    external: true

### Additional Information

_No response_

with time seems like its solved, maybe cache issue on the server side? i dont know.
I cleaned all the data on the web browser, this is odd.


Fixed removeObserveringDelegate so it does not skip over indices

because of removed values.
Also refactored tests to remove XCTestExpecation's since they are not necessary. They also were not sufficient to check that a method was not called.

@randallli I updated Travis to now pass. Can you update this pull request and run your tests again? Should pass fine now.


Explorer - canceling input box focus tree instead of previously focused item

Issue Type: Bug
Creating in root instead of selected folder:

Duplicating Folder:

If you check the file system after, the folder was not actually created. If you go on to put a file in the duplicated folder, it works.
VS Code version: Code 1.32.1 (05f146c7a8f7f78e80261aa3b2a2e642586f9eb3, 2019-03-08T00:51:49.278Z)
OS version: Windows_NT x64 10.0.17763

Can be related https://github.com/Microsoft/vscode/issues/69368

@frobinsonj can you please post simple steps? As I am having a hard time figuring out from your gifs what you are doing and what is expected. Sorry

@isidorn No problem :)
Creating in root instead of selected folder:

Select a folder that contains at least one file
Click "New Folder" button
Click on a file in the selected folder (cancels input but leaves the folder selected)
Adding a new file/folder will place it in the root instead of the selected folder.

Duplicating Folder:

Select a folder:
Click "New Folder" button
Click off to cancel input
Click "New File" or "New Folder" button
Open in the folder, it will show a folder instead with the same name.

@joaomoreno somehow the tree misteriously "looses focus" for me here.
Here's what happens:

I say tree.setFocus([element]) - tree nicely has element with focus
Some time later, I say tree.getFocus() I get back an empty array even though in the UX it is clear that the focus is in the tree on one of the elements (seen by the darker blue color)
I have also checked and nobody calls tree.setFocus between 1. and 2.

How is it possible that this focus trait just disaperas? Even though it is shown in the UX?

Yup, dupe of #69368

@joaomoreno , what about the duplicating folder issue shown here?

That doesn't repro any more in master. Very likely was fixed by https://github.com/Microsoft/vscode/issues/70902

Great, thanks :)


Fix & break up the test for Part 01 Step 11

From j1939-84 created by mmschaefer: SolidDesignNet/j1939-84#21
Unit tests for Part 01 Step 11 need to broken down to one error per test and the test need to be update to cover all lines of code.  Verification to the latest version of the spec (issued 6/24/2021) is also included here.

[x] Break up test
[x] Added additional tests
[x] Verified to latest version issued June 24, 2021 Specification


GPG check for user install

Hey everyone!
I realised the gpg command was added for system installs, any reason for not adding it to user installs?
I ended up doing the following to fix the gpg error:
gnupg_dir       = "/home/#{node[:user][:name]}/.gnupg"
gnupg_dir_user  = "chown -R #{node[:user][:name]}:#{node[:user][:group]} #{gnupg_dir};"
gnupg_dir_root  = "if [ -d #{gnupg_dir} ]; then chown -R root:root #{gnupg_dir}; fi;"
gnupg_cmd       = "`which gpg2 || which gpg` --keyserver hkp://keys.gnupg.net --recv-keys #{node['rvm']['gpg_key']};"

execute "Adding gpg key to #{node[:user][:name]}" do
  environment ({"HOME" => "/home/#{node[:user][:name]}"})
  command "#{gnupg_dir_root} #{gnupg_cmd} #{gnupg_dir_user}"
  not_if { node['rvm']['gpg_key'].empty? }
  returns 0
end

Not the best code, but it's working for now :smile:
I had to change the ownership because the keys are added as root and they need to belong to each user to pass the check. I tried to run the execute using the user attribute, but it didn't work either. If they already exist, they have to belong to root again other wise you get a security warning and the recipe fails.
Any better ideas for this?
Will you add a workaround for user installs soon?
Best,
Martin

@akshah123 I tried that but it didn't work, I'll try again and will let you know what I find.

@lemattma two key things are the environment & user options.
My original message was missing environment which I fixed.
It worked for me on ubuntu 12.04 with vagrant user.

I created PR for this.
@lemattma, try out the PR/fork to see if it works for you.

@akshah123 doesn't seem to work and I'm not the only one, Check this out:
https://github.com/fnichol/chef-rvm/issues/193#issuecomment-68934570

@lemattma
well they are setting cwd.  The environment value is the key.  The error
==> default: STDERR: gpg: fatal: can't create directory `/root/.gnupg': Permission denied

suggests that it is using the correct user but the wrong home folder.
By setting the home folder in environment, we can bypass that problem.
I got the same error before i added following:
environment ({"HOME" => "/home/#{user}"})

@akshah123
Yes, I tried all of that (an entire day trying), and couldn't make it work. When you use HOME it will work but the gpg files will have root as the owner and when you do the gpg check as user will fail because doesn't have access to that.
I discovered that by adding the keys manually as root on a user home folder. then when I ran the recipe again, it failed again because of permission. I chwon them to the user, ran the recipe and it worked!.
That's the story behind why I had to to what you see here https://github.com/fnichol/chef-rvm/issues/288#issue-53328772
If you could try all of this and share your results it would be awesome!

Can you use not_if and only_if in the same resource? I wouldn't have thought so and I have no idea which one takes precedence.

@docwhat, I don't see why not.  Its not about precedence as both would have to pass.
I simply took the code form here: https://github.com/fnichol/chef-rvm/blob/master/recipes/system_install.rb#L33

@akshah123, group did it for me. However, I had to comment out the only_if 'which gpg2 || which gpg' attribute otherwise the command wouldn't run. cwd was not necessary.
execute "Adding gpg key to #{node[:user][:name]}" do
  environment ({"HOME" => "/home/#{node[:user][:name]}"})
  command "`which gpg2 || which gpg` --keyserver hkp://keys.gnupg.net --recv-keys #{node['rvm']['gpg_key']};"
  user node[:user][:name]
  group node[:user][:group]
  # only_if 'which gpg2 || which gpg'
  not_if { node['rvm']['gpg_key'].empty? }
end

@lemattma @akshah123 Can you pull from master and let me know if this is fixed for you?

Closing due to inactivity.
If this is still an issue please reopen or open another issue. Alternatively drop by the #sous-chefs channel on the Chef Community Slack and we'll be happy to help!
Thanks,
Sous-Chefs


GPIO-Modules: brain:Skipped module 'Lamp' because it misses the WORDS constant.

Hello,
I had been trying to use https://github.com/zainozzaini/RaspberryPi-Jasper-LED when the "Lamp.py" works perfectly from the command line. Now the problem is when Jasper starts it says,
pi@raspberrypi ~ $ /home/pi/jasper/jasper.py

        JASPER - THE TALKING COMPUTER           *

(c) 2015 Shubhro Saha, Charlie Marsh & Jan Holthuis *

error in main block
WARNING:client.brain:Skipped module 'Lamp' because it misses the WORDS constant.
What might be the cause is?
Thank you.
--
Raqueeb Hassan
Bangladesh

Lamp.py is not a jasper module, SHLight.py is.


[FEATURE] Monitoring add to Paymenter

Is your feature request related to a problem? Please describe.
No
Describe the solution you'd like
monitoring services with ping or something else or whether they are online as is also built into whmcs
Describe alternatives you've considered
there are nice services available but I would still like to see that it is in paymenter as a function

This would be very cool. Maybe there is a possibility to work with some kind of API for this like UptimeRobot, BetterUptime or another monitoring service. This would remove the need for a separate status page.

Also a server monitor that monitors the physical servers ram/cpu/disk usage. Hetrixtools has something like this

WIP


fix for gbif/ipt#1248

Quick fix for https://github.com/gbif/ipt/issues/1248, please check.

Thank you for this pull request @pieterprovoost
In case you weren't aware, there is a set of unit tests related to DCAT generation: https://github.com/gbif/ipt/blob/master/src/test/java/org/gbif/ipt/task/GenerateDCATTest.java
I would have expected an update here to ensure that non published datasets don't get included in the feed - can you please take a look? Thanks for your help.

This doesn't impact DCAT, just RSS. I'll try to add a unit test in https://github.com/gbif/ipt/blob/master/src/test/java/org/gbif/ipt/service/manage/impl/ResourceManagerImplTest.java

Sorry @pieterprovoost you're right, my mistake. Adding a test for the 'latest' method would be a valuable addition if you could make that, thanks again for your help.

I have made a few more changes and added a test for latest(). RSS feed generation now only checks the last published version of a dataset.

Thank you very much @pieterprovoost, that was perfect. Are there any other pressing issues that you need fixed?

@kbraak No, just that one, thanks.

@pieterprovoost
I really appreciated receiving your help on this issue. I wanted to say thanks again by acknowledging your contribution in the following blog post that promotes the latest IPT 2.3.3 release: http://gbif.blogspot.dk/2017/01/ipt-v233-your-repository-for.html


Images are not visible in the console and are invalid in the ChatML / string representation.

The bug
While images are visible in Jupyter, the ChatML/string representation becomes invalid once the runtime stops, and the images are not visible in the console.
<|im_start|>user
What is the capital of <|_image:94590504830032|>?<|im_end|>
<|im_start|>assistant
I'm unable to view or interpret images directly. However, if you provide a description of the image or additional context, I'd be happy to help you with any information you need!<|im_end|>

The current image representation is a custom ChatML tag - <|_image:94590504830032|> with the number valid only during runtime, referencing the local runtime object.  As a result, the produced ChatML log str(lm) is effectively invalid.  Note also, <|_image:xxx|> is not a valid markdown or HTML, and as a result, regular markdown viewers that can view the rest of the ChatML exchange can't display images.
It'd be good to normalize the representation and use valid Markdown tags  or  or : <img src="data:image/jpeg instead of newly introduced <|_image: |> tag.
To Reproduce

        with user():
            lm = self.gpt + f"What is the capital of " + image("france.jpg") + "?"

        with assistant():
            lm += gen("capital")

System info (please complete the following information):

OS:  Ubuntu 22.04, vscode
Guidance Version: 0.1.16

If this helps, I've implemented a hook, so the URLs get expanded, as a workaround for vLLM / OpenAI hosted VLMs:
def hook(request):
    j = json.loads(request.content)

    def process_content(input_str):
        # Regular expression to split text and img tags, capturing the image URL.
        parts = re.split(r'(]*src=[\'"]([hfd].*?)[\'"][^>]*>)', input_str)
        content, image_url = [], None

        for i in range(len(parts)):
            if i % 3 == 0:  # Text part (regular text before or after  tags)
                text_part = parts[i].strip()
                if text_part:
                    content.append({"type": "text", "text": text_part})
            elif i % 3 == 2:  # Image URL part (captured inside the  tag)
                image_url = parts[i].strip()
                content.append({"type": "image_url", "image_url": {"url": image_url}})

        if not image_url:
            return input_str

        return content

    # Split the content of the message into text and image_url parts
    for message in j['messages']:
        if isinstance(message["content"], str):
            message["content"] = process_content(message["content"])

    modified_content = json.dumps(j).encode('utf-8')
    request.stream = httpx.ByteStream(modified_content)
    request.headers['Content-Length'] = str(len(modified_content))

It can be used with:
...
import httpx, json

llm = models.OpenAI(...
                    http_client=httpx.Client(event_hooks={'request': [hook]}))

llm = llm + f"Is there a dog on this image? " + f"" + "?"
...

Thank you for the feedback. We are actively working on a full-stack rework of multimodal support in Guidance. Part of this rework involves reformatting the way that prompt data is represented internally, which should enable us to have more flexibility in how we present the data to users.
Can you share more info on how you are trying to use the output of str(lm)? I would like to reproduce the error you're getting. It sounds like you expect str(lm) to result in a valid HTML string with the image data encoded in an img tag. Currently, str(lm) is meant to output the internal string prompt representation that is a Guidance-specific format. With more info about your use case, I can consider how we might make a better function for you to be able to achieve the output you want. There is ongoing work to rework the Jupyter UX in addition to adding better multimodal support, so this is a good opportunity to take your feedback into consideration.

I expect str(lm) to result in a valid ChatML / Markdown string, like it was
in the text-only case. It seems that ChatML was designed to work well in
Markdown (de-facto standard for LLM output formatting), I was assuming that
Guidance also used that convention.
I apply a small bugfix to str(lm) output, re-arranging spacing around the
tags, so they'd render the same in the Markdown viewer as in the ChatML
documentation
https://learn.microsoft.com/en-us/azure/ai-services/openai/how-to/chat-markup-language#working-with-chat-markup-language-chatml.
And
for LaTeX, formatting, images or videos I use either Markdown/HTML tags.
This allows the use of a rich ecosystem of Markdown parsers, renderers and
editors. In the case of images, I prefer to use  tag, as they are
supported in all Markdown implementations and allow to use richer src URI
syntax, including local file, b64 data or URLs.
<|im_start|>system

Provide some context and/or instructions to the model.

<|im_end|>

<|im_start|>user
The user’s message goes here

<|im_end|>
<|im_start|>assistant


Add important files

This PR aims to add several very important files.

Merged, very important files received!


cmd/gofmt: Removed semicolon not converted to end-of-line when adjacent to a block comment.

Please answer these questions before submitting your issue. Thanks!

What version of Go are you using (go version)?
1.6
What operating system and processor architecture are you using (go env)?
darwin, amd64
What did you do?

Start with a.g:
package main

func f() {}
func main() {
    f(); /* something */ f()
}

go fmt, got
package main

func f() {}
func main() {
    f() /* something */ f()
}

Semicolon is removed, but endl is not inserted. The previously valid program is now broken.

What did you expect to see?
The previously valid program remains valid.
What did you see instead?
The previously valid program is now broken.

We have lived with this for a long time. Moving to Go1.8Maybe. (gofmt needs some serious love at some point).

Thanks.


RX 580 ?

Please tell me what would be the best configuration for RX-580 cards?
Parameters :
-b =
-t =
-p =
Thanks.

You just have to play around till you get its max point. Try -b 72 -t 256
-p 1024
NB:
-b is for the computing/cuda cores. If -d = 0 then -b will be 36. If -d =
0, 1 den -b will be 72 (36*2)... and so forth (use cudainfo.exe to check
the number of -d you have)
-t can be 256 or 512 (for higher cards based on -b)
-p will be 1024 for 2GB RAM (dedicated for the GPU) or 2048 for a 4GB RAM
(dedicated for the GPU)....and so forth (use cudainfo.exe to check)
On Sat, Mar 9, 2019 at 12:28 PM prodnet<EMAIL_ADDRESS>wrote:

Please tell me what would be the best configuration for RX-580 cards?
Parameters :
-b =
-t =
-p =
Thanks.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/brichard19/BitCrack/issues/153, or mute the thread
https://github.com/notifications/unsubscribe-auth/Ae0S2bXI2kH2BAbKDnKfHzxpvCckY36Gks5vVBlTgaJpZM4bm4xy
.

My card is not Nvidia....it is AMD RX 580 .....

RX-580 card have 2304 cores .....


chore: Integration Account - Provide script to upload schemas.

This PR closes #160
In order to align with other scripts, the following parameters mentioned in the issue have been renamed:

IntegrationAccountName --> Name
IntegrationAccountResourceGroup --> ResourceGroup

The following parameters have been added:

SchemaFilePath: allows upserting a single schema
RemoveFileExtensions: switch indicating whether to remove the file extension.

Module:
A new module has been created for this: Arcus.Scripting.IntegrationAccount.
As this will be extended by all other scripts required for the open issues on this topic.
Documentation:
A new page (Integration Account) has been added in the preview folder + update on the index.md to refer to the new page.
Once this PR has been reviewed/approved the other issues will be taken care of and set up similar to this.

The .psd1 file should have not this as ModuleVersion:
# Version number of this module.
ModuleVersion = '0.1'

But:
# Version number of this module.
ModuleVersion = '#{Package.Version}#'

The .psd1 file should have not this as ModuleVersion:
# Version number of this module.
ModuleVersion = '0.1'

But:
# Version number of this module.
ModuleVersion = '#{Package.Version}#'

Woops, missed that one 😅

The .psd1 file should have not this as ModuleVersion:
# Version number of this module.
ModuleVersion = '0.1'

But:
# Version number of this module.
ModuleVersion = '#{Package.Version}#'

Woops, missed that one 😅

😄 I also change this locally to test it locally. I'll have a look in the future if we can maybe change this a bit so it's easier to test locally.

@stijnmoreels : I've added some unit tests, if you would so kind to review this, please?
Just to make sure I didn't make any stupid mistakes 😅
Thanks.


Gherkin parser does does not include last step in scenario

Looks like the AbstractScenarioFileParser is not adding the last step of a scenario in a feature file.  I believe line 264 in that class is the culprit.
In the following feature file the last step (*Then I ask it to say hi") is not included in the list of steps that the parseScenario() function creates.  It looks like the do while loop always terminates 1 step too early.
Feature: Switch Frame Test
Scenario: Switch Frame Test
Given I open browser to webpage "http://nunzioweb.com/iframes-example.htm"
Then "iframe1" should exist
Then I switch to "iframe1" frame by element
Then I click on "iframe1.play"
Then I ask it to say hi

@mitchellhwright can you provide qaf build details you faced this issue with?

I believe it happens with both 2.1.8 and 2.1.9.  The do while loop logic is similar for both.
From: cjayswal<EMAIL_ADDRESS>Sent: Tuesday, November 1, 2016 2:29 PM
To: qmetry/qaf<EMAIL_ADDRESS>Cc: Mitchell Wright<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [qmetry/qaf] Gherkin parser does does not include last step in scenario (#41)
@mitchellhwrighthttps://emea01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fmitchellhwright&data=01|01|mitchellw%40perfectomobile.com|e60ed95daf314eeffab408d40284f4e8|ceb4c662d6994e7da0bd272619a46977|1&sdata=Ai8T3SrPsItWd2z3jo68PAFV%2BBkLhn3oibX%2F%2BjTENaU%3D&reserved=0 can you provide qaf build details you faced this issue with?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://emea01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fqmetry%2Fqaf%2Fissues%2F41%23issuecomment-257652011&data=01|01|mitchellw%40perfectomobile.com|e60ed95daf314eeffab408d40284f4e8|ceb4c662d6994e7da0bd272619a46977|1&sdata=oLBJGRu8%2FG8VSIziC3HD8ix4P1OY7TDh6R8P9jSLryg%3D&reserved=0, or mute the threadhttps://emea01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAQGr7EMlL7B3yo3WhZZjhSbIvWfOQI8lks5q54TfgaJpZM4KmHah&data=01|01|mitchellw%40perfectomobile.com|e60ed95daf314eeffab408d40284f4e8|ceb4c662d6994e7da0bd272619a46977|1&sdata=QC9fvhN6IdgthldMhmwnOwmFoTi5joboVn0kca1Z0cE%3D&reserved=0.
The information contained in this message is proprietary to the sender, protected from disclosure, and may be privileged. The information is intended to be conveyed only to the designated recipient(s) of the message. If the reader of this message is not the intended recipient, you are hereby notified that any dissemination, use, distribution or copying of this communication is strictly prohibited and may be unlawful. If you have received this communication in error, please notify us immediately by replying to the message and deleting it from your computer. Thank you. The information contained in this message is proprietary to the sender, protected from disclosure, and may be privileged. The information is intended to be conveyed only to the designated recipient(s) of the message. If the reader of this message is not the intended recipient, you are hereby notified that any dissemination, use, distribution or copying of this communication is strictly prohibited and may be unlawful. If you have received this communication in error, please notify us immediately by replying to the message and deleting it from your computer. Thank you.

qaf-2.1.8 doesn't have gherkin factory it must be one of 2.1.9RC-1, 2.1.9RC-2, 2.1.9RC-3 or 2.1.9

True.  Well it definitely happens in 2.1.9
From: cjayswal<EMAIL_ADDRESS>Sent: Tuesday, November 1, 2016 2:34 PM
To: qmetry/qaf<EMAIL_ADDRESS>Cc: Mitchell Wright<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [qmetry/qaf] Gherkin parser does does not include last step in scenario (#41)
qaf-2.1.8 doesn't have gherkin factory it must be one of 2.1.9RC-1, 2.1.9RC-2, 2.1.9RC-3 or 2.1.9
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://emea01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fqmetry%2Fqaf%2Fissues%2F41%23issuecomment-257653715&data=01|01|mitchellw%40perfectomobile.com|4faaa0520acd4deca49508d40285a033|ceb4c662d6994e7da0bd272619a46977|1&sdata=5aQCTj4EQYVXntFHxXH4mrpht425hS7NcRGI5K7dz54%3D&reserved=0, or mute the threadhttps://emea01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAQGr7Dt7s8fxblEGQ5cObD0cvJPz67K5ks5q54YMgaJpZM4KmHah&data=01|01|mitchellw%40perfectomobile.com|4faaa0520acd4deca49508d40285a033|ceb4c662d6994e7da0bd272619a46977|1&sdata=Kdgf%2FnGgnZsCtgJo8d1t7tEYrjfFyovk3eUZEXBYhzg%3D&reserved=0.
The information contained in this message is proprietary to the sender, protected from disclosure, and may be privileged. The information is intended to be conveyed only to the designated recipient(s) of the message. If the reader of this message is not the intended recipient, you are hereby notified that any dissemination, use, distribution or copying of this communication is strictly prohibited and may be unlawful. If you have received this communication in error, please notify us immediately by replying to the message and deleting it from your computer. Thank you. The information contained in this message is proprietary to the sender, protected from disclosure, and may be privileged. The information is intended to be conveyed only to the designated recipient(s) of the message. If the reader of this message is not the intended recipient, you are hereby notified that any dissemination, use, distribution or copying of this communication is strictly prohibited and may be unlawful. If you have received this communication in error, please notify us immediately by replying to the message and deleting it from your computer. Thank you.


[Question] Maximum number of submissions per team

In the Scoring menu (admin view), Maximum number of submissions per team value is per challenge or for all the CTF duration?

That's correct.  That way it could be used for short-duration evaluation type event.

So the answer is: Maximum number of submissions per team for all the CTF duration?

Correct.

Is is possible to write this precision under the field?

@noraj1337, let me know if that is sufficient.

Here you put per challenge and last time you told me for all the CTF duration so I don't understand the final answer

Per challenge, for the duration of the CTF. Is that any clearer?
On Sat, Jul 8, 2017 at 17:09 Alexandre ZANNI<EMAIL_ADDRESS>wrote:

Here you put per challenge and last time you told me for all the CTF
duration so I don't understand the final answer
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/mcpa-stlouis/hack-the-arch/issues/29#issuecomment-313883877,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AIb5B-5Fjoq5RPDHx6ta7qEYheEIq_Tnks5sL_4HgaJpZM4NUHHr
.

@paullj1 yes it is :)


TASK - E2E Testing Framework for CLI

Description
Definition and implementation of the testing framework for the CLI.
Acceptance Criteria

[x] Testing framework finalized
[x] Initial testing implemented

Task has been completed


Update f3 to user stm32f30x 0.5.0 along with all other dependencies.

Thanks for the PR, @brandonedens. I'm going to close this in favor of #80 which apart from bumping the dependencies also updates the examples to use RTFMv2.

Sounds great.


Update doc generation script

Motivation:
The docs haven't been generated for a while.
See also: https://github.com/apple/swift-nio/pull/2013
Modifications:

Add NIOSOCKS module
Pass --spm flag to sourcekitten
Update source location of sourcekitten

Result:
Docs build.

@swift-nio-bot test this please

Nightly toolchain is segfaulting -- bug filed upstream.


[BUG]  &  var

OB no longer replace USER and PASS variables with input data
At first I thought there was a problem with my configuration files but I realized by simulating a test with the debugger that OB was no longer replacing these 2 variables and I don't know why. I also don't know if this problem concerns everyone but a few people told me they were facing the same problem.
I would like to point out that a few days ago, everything was working properly.
I tried to uninstall and then reinstall OpenBullet but nothing has changed...
Version: 1.1.2
Screenshot: https://pasteboard.co/IeO9UFX.jpg

I finally found the solution and the problem came from the "Environment.ini" file.
The same problem as with the old version...

Stop posting this stuff, OpenBullet should not be used for malicious purposes and we all know USER and PASS are used on cracking forums. I will not facilitate that kind of behaviour, so the Environment.ini file will stay as it is now.


Available apps Ui and colors

Related Issue
Closes #issue_number
#890
Description
Available Apps UI improved and changed the Colors accordingly.
Screenshots
https://github.com/rohansx/informatician/assets/74443858/850a077f-d683-4841-a16e-fbb61c74ee0e
Checklist

[x] My code adheres to the established style guidelines of the project.
[x] I have included comments in areas that may be difficult to understand.
[x] My changes have not introduced any new warnings.
[x] I have conducted a self-review of my code.

@Piyusharora2003 resolve the conflicts

Hi @Piyusharora2003,
We're in the process of migrating the codebase to Next.js. It's crucial to resolve any conflicts before 10 AM IST today (24th July) to proceed with the PR merge. After this time, due to upcoming changes in the codebase, we won't be able to merge the PR. So, please make sure to address any conflicts before the deadline.


kubelogin convert-kubeconfig -l spn returns non zero exit code without any error message

In one of our environments we are facing intermittent issue with below command
kubelogin convert-kubeconfig -l spn
It just returns non zero exit code without giving any error message. So its is not possible to find out what is wrong.
Environment Details:
Kubelogin version: v0.0.30
kubectl version: 1.26.1
Please suggest how can we get error message in return in case of such failure while calling kubelogin convert-kubeconfig -l spn.

can you add -v=7 or higher?


FixedSizeArray cleanup

This PR removes structs that are no longer necessary because of FixedSizeArrays, and some obsolete fields that may have been part of the cleanup in #556.
Not included are:

RaptureHotbarModule, because Kaz left a comment waiting for "better fixed arrays".
RaptureGearsetModule (handled by #562).
RaptureMacroModule (handled by #504).

Also fixed RetainerCommentModule and removed the Comment property in favour of a cleaner fixed byte array (since the offset was wrong, I assume nobody used it anyway).

Tests are failing because of dab84b2ff24761e1ab023409bd181f4d8c18678a (not part of this PR).

pull newest main and it resolves it


Better support Hardhat tests in --parallel mode

In Parallel mode, each thread gets its own Hardhat Network instance, yet they all have the same chain id so they use the same manifest file. I don't think this will cause errors with the manifest file because due to being a development network we basically ignore the contents if they don't match expectations, but it will for sure cause unnecessary contention and lead to errors such as https://github.com/NomicFoundation/hardhat/discussions/3093.
This should probably be fixed along with https://github.com/OpenZeppelin/openzeppelin-upgrades/issues/465, by detecting different instances and using a different manifest file for each.

Note: There is currently no built-in way to uniquely identify Hardhat Network instances. We could use process.pid as a workaround untill that exists.

+1
  2) Forta
       "before all" hook for "check deployment":
     Error: Lock file is already being held
      at /home/somedude/workspace/forta-token/node_modules/proper-lockfile/lib/lockfile.js:68:47
      at callback (node_modules/graceful-fs/polyfills.js:306:20)
      at FSReqCallback.oncomplete (node:fs:199:5)

There is now a way to implement this with the hardhat_metadata RPC method: https://github.com/NomicFoundation/hardhat/pull/3382.
Haven't found docs but here's the type that will be returned by the RPC method:
https://github.com/NomicFoundation/hardhat/blob/5cecb9692ca8bfa4a57a592e3233b24336da6e1c/packages/hardhat-core/src/internal/core/jsonrpc/types/output/metadata.ts


Create 2021-05-19-PancakeBunny.md

Would you please consider merging this PR instead of the wrong one https://github.com/1712n/dn-institute/pull/119 ?

Would you please consider merging this PR instead of the wrong one #119 ?

Sure. Thank you!

Please, make sure to check for grammar and punctuation issues using language tool and merge main into the branch

Is it okay if language tool indicates some issues in citations?

/payout

Thank you so much

@Annyvichi can you please email your BTC address to<EMAIL_ADDRESS>Please include the QR code.

@Annyvichi can you please email your BTC address to<EMAIL_ADDRESS>Please include the QR code.

I've just emailed you


The corrected figure looks strange.

Hi, I'm a beginer in this field. I have a question, is the corrected image in the visualization displayed correctly? Why is there always a slight redness?

Looking forward to your early reply.

It's not 'EPOCH 0', I only test the some images using the premained model. It seems that the code in 'save_vis' function is not correcte. Because the image has been transformed nonlinearly before color correction.
Besides, the performance is not well when there are lights in the image.

Thank the author for releasing the code.
I also found this problem. According to #8 , I guess this is because the input of model has done the gamma correction, but the visualization part has not.
Thus, you can dotorch.pow(img, 2.2) before correction if using the pretrained model or trained a new model with no gamma correction.

Thank you for your kind reply.
I really appreciate the code you shared, it is very helpful to me.

Thank you @soleil-de-pluie for replying so fast and addressing the issue ad to both of you for using my implementation of FC4


Illegal_reg_rv32e not updated on two consecutive multicycle invalid instructions

Observed Behavior

On sequence

jalr x2, 0(x16)		        Decode	PC:32'h10080 Invalid correctly handled
jalr x2, 0(x16)		        Decode	PC:32'h10000 Invalid not handled -> x2 wrongly updated
Expected Behavior

Steps to reproduce the issue

My Environment

EDA tool and version:

Operating system:

Version of the Ibex source code:

Configuration:
Two-stage pipeline without additional branch target ALU
RegFile                  : "ibex_pkg::RegFileFF"
BranchTargetALU          : 0
WritebackStage           : 0
https://github.com/lowRISC/ibex/commit/9e4a950aa6aa0e20eb638aeeb78743d4a9ddaaeb

Configuration RV32E


[Xaml] Unable to resolve symbol 'compilerApp'

Release Type: GitHub
Version: master
https://github.com/stride3d/stride/blob/c6fd21b1bc974fd3fed0f6089df31bb356b3e574/sources/editor/Stride.Core.Assets.Editor/Themes/generic.xaml#L80
https://github.com/stride3d/stride/blob/c6fd21b1bc974fd3fed0f6089df31bb356b3e574/sources/editor/Stride.Core.Assets.Editor/Themes/generic.xaml#L92
compilerApp -> diagnostics

Fixed through #1822


Can't get address from pubKey

$pubKey = '30440220401186e39a8ff0c64a6be2256ed4c818e09ff35ddf60bb1678f6ceaa3268fa5802203ec554c18a3bcf6eed34c279c4057afb04d4b73d2f6dc46ea97d9f6b9a3c7819';

$publicKey = BitWasp\Bitcoin\Key\PublicKeyFactory::fromHex($pubKey);

Gives exception:

Invalid hex string, must match size of compressed or uncompressed public key
bitwasp/bitcoin/src/Crypto/EcAdapter/Impl/PhpEcc/Serializer/Key/PublicKeySerializer.php on line 83

Why?

That's a signature

Can I somehow generate public key(s) from it?

Not in a way supported by the library, there isn't a huge reason to support it specifically - what is it you're trying to do?

I was trying to parse list of share holders in one of ALT.
https://github.com/elastic-project/genesis-block/blob/master/genesis-block.json

Ah - cool! There's probably enough parts here to do it, but you should also double check it can't be learned by just looking up the txid/vout where you saw the signature, and checking that scriptPubKey for the pubkey.
I think it's a little easier than going the signature recovery route, you'd just use the RPC with txindex.
Did you get the signature above from the txids in that file, or where? I'll post something later, away from keyboard atm

Hey, did you check if those txs have the public key in the output script?

Closed due to inactivity

In my local regtest network
getrawtransaction bf6ea04bcb18121567bcaaebf8a60e7422cdb2d03b2c9153a93e42893408b1ee 2
`
{
"hex": "02000000010000000000000000000000000000000000000000000000000000000000000000ffffffff03510101ffffffff020060a0da38f4010023210317bb6666c8ab66cf392432b66bd83a87f05f81e5169a306038778548b2cee004ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf900000000",
"txid": "bf6ea04bcb18121567bcaaebf8a60e7422cdb2d03b2c9153a93e42893408b1ee",
"hash": "bf6ea04bcb18121567bcaaebf8a60e7422cdb2d03b2c9153a93e42893408b1ee",
"size": 145,
"vsize": 145,
"version": 2,
"locktime": 0,
"vin": [
{
"coinbase": "510101",
"sequence":<PHONE_NUMBER>
}
],
"vout": [
{
"value": 5500000.00000000,
"n": 0,
"scriptPubKey": {
"asm": "0317bb6666c8ab66cf392432b66bd83a87f05f81e5169a306038778548b2cee004 OP_CHECKSIG",
"hex": "210317bb6666c8ab66cf392432b66bd83a87f05f81e5169a306038778548b2cee004ac",
"reqSigs": 1,
"type": "pubkey",
"addresses": [
"mfvF9ynrGPWfvi5WutH8AY9MTEYeh6bLfX"
]
}
},
{
"value": 0.00000000,
"n": 1,
"scriptPubKey": {
"asm": "OP_RETURN aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf9",
"hex": "6a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf9",
"type": "nulldata"
}
}
],
"blockhash": "20c5969bd967479cb6d23cf72a34d213f8f797f62d340509e5a7292ed64dc661",
"confirmations": 102,
"time":<PHONE_NUMBER>,
"blocktime":<PHONE_NUMBER>
}

$transaction = TransactionFactory::fromHex($rawTransaction);
foreach ($transaction->getOutputs() as $n => $item) {
$addrCreator = new AddressCreator();
$addrrss = $addrCreator->fromOutputScript($item->getScript());
}
`


Support for non-parametrized generic types

from typing import Dict
from pytypes import typechecked

@typechecked
def foo(a: Dict):
    pass

foo({'name': 'test2', 'surface': 1})

Raises
   pytypes.exceptions.InputTypeError:
     autoclass.tests.test_readme.foo
     called with incompatible types:
   Expected: Tuple[Dict]
   Received: Tuple[Dict[str, Union[str, int]]]

While it should not.
Note that it also makes PyCharm 2017.2.4 and 2017.3 crash when executed in the python terminal :
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
  File "C:\Program Files\JetBrains\PyCharm Community Edition 2017.2.3\helpers\pydev\_pydev_bundle\pydev_console_utils.py", line 251, in add_exec
    more = self.do_add_exec(code_fragment)
  File "C:\Program Files\JetBrains\PyCharm Community Edition 2017.2.3\helpers\pydev\pydevconsole.py", line 123, in do_add_exec
    command.run()
  File "C:\Program Files\JetBrains\PyCharm Community Edition 2017.2.3\helpers\pydev\pydevconsole.py", line 82, in run
    self.more = self.interpreter.runsource(text, '<input>', symbol)
  File "C:\Miniconda3\envs\tools\lib\code.py", line 75, in runsource
    self.runcode(code)
  File "C:\Miniconda3\envs\tools\lib\code.py", line 95, in runcode
    self.showtraceback()
  File "C:\Miniconda3\envs\tools\lib\code.py", line 149, in showtraceback
    sys.excepthook(ei[0], ei[1], last_tb)
  File "C:\Miniconda3\envs\tools\lib\site-packages\pytypes\util.py", line 816, in _pytypes_excepthook
    traceback.print_exception(exctype, value, tb, _calc_traceback_limit(tb))
  File "C:\Miniconda3\envs\tools\lib\site-packages\pytypes\util.py", line 760, in _calc_traceback_limit
    if tb2.tb_next.tb_frame.f_code.co_filename.split(os.sep)[-2] == 'pytypes' and not \
IndexError: list index out of range

I agree this is a bug and needs a fix.
However note that your example should actually fail in strict PEP 484 sense, because a: Dict should be treated like a: Dict[Any, Any] and the type parameters of Dict are invariant. That said, pytypes is intentionally less strict (by default) than PEP 484 because I found this behaviour too counter-intuitive. pytypes.covariant_mapping = False would cause strict PEP 484 behavior (default is True).
Also note that pytypes has a flag to treat undeclared type parameters as unknown rather than Any. (pytypes.strict_unknown_check). One can also prohibit missing type parameters at all by setting pytypes.check_unbound_types = False, which lets pytypes throw an error as soon as an incompletely declared type is encountered (intended for finding holes in your one's type annotations).

Note that using Dict[Any, Any] in the above example works without any trouble (but you probably have noted it already :) )

That's exactly why I admitted that this is an actual bug ;)
However, already looked into it and fixed it. Commit on the way...

See https://github.com/Stewori/pytypes/commit/1752849fa55109c8c5de9f4da43883998057382f.

I did not yet add a test for this. This is a remaining todo...


Update sbt-mima-plugin to 0.6.4

Updates com.typesafe:sbt-mima-plugin from 0.6.1 to 0.6.4.
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Have a fantastic day writing Scala!

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "com.typesafe", artifactId = "sbt-mima-plugin" } ]

labels: sbt-plugin-update, semver-patch

Codecov Report

Merging #1390 into master will increase coverage by 0.08%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #1390      +/-   ##
==========================================
+ Coverage   85.77%   85.85%   +0.08%
==========================================
  Files          72       72
  Lines        2496     2496
  Branches      112      112
==========================================
+ Hits         2141     2143       +2
+ Misses        355      353       -2

Impacted Files
Coverage Δ

...d/src/main/scala/io/circe/NonEmptySeqDecoder.scala
91.66% <0%> (-8.34%)
:arrow_down:

...les/core/shared/src/main/scala/io/circe/Json.scala
79.42% <0%> (ø)
:arrow_up:

...rc/main/scala/io/circe/numbers/BiggerDecimal.scala
85.38% <0%> (+1.16%)
:arrow_up:

...re/shared/src/main/scala/io/circe/JsonNumber.scala
93.97% <0%> (+1.2%)
:arrow_up:

Continue to review full report at Codecov.

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


Add nanstd variant of std

Reference: https://numpy.org/doc/stable/reference/generated/numpy.nanstd.html
I copied the definitions from std in this file.

Thanks :)


Set Google Sheet id with env variable in gulp. Closes #4

While processing the custom js files, gulp will now also look for //GOOGLE_SHEET_KEY and replace it with whatever the env variable is set to.
I'm brand new to gulp, so want someone else to check my work. Is it okay to add new dependencies like this?
Closes #4

Yay! Thanks for that, @ondrae. :)


Check for nullptr before calling uv_thread_join

The "TODO" test for Thread crashes for me with a segfault, as uv_thread_join() doesn't check if it's given a null pointer. This change adds an extra check in ~Thread before calling uv_thread_join(). Arguably this logic could be moved to join(), but I think it's reasonable to segfault if the user calls join() on an improperly initialized Thread object.
Below is the back trace I get from the test on master.
$ gdb ./test/bin/thread
GNU gdb (GDB) Fedora 8.0.1-30.fc27
Copyright (C) 2017 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-redhat-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from ./test/bin/thread...done.
(gdb) run
Starting program: /home/evan/code/uvw/build/test/bin/thread
Missing separate debuginfos, use: dnf debuginfo-install glibc-2.26-16.fc27.x86_64
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
Running main() from gtest_main.cc
[==========] Running 8 tests from 8 test cases.
[----------] Global test environment set-up.
[----------] 1 test from Thread
[ RUN      ] Thread.TODO

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff70c4ace in pthread_join () from /lib64/libpthread.so.0
Missing separate debuginfos, use: dnf debuginfo-install libgcc-7.2.1-2.fc27.x86_64 libstdc++-7.2.1-2.fc27.x86_64
(gdb) bt
#0  0x00007ffff70c4ace in pthread_join () from /lib64/libpthread.so.0
#1  0x00000000004924ae in uv_thread_join (tid=<optimized out>) at src/unix/thread.c:212
#2  0x000000000047dfca in uvw::Thread::join (this=0x7192f0) at /home/evan/code/uvw/src/uvw/thread.hpp:59
#3  0x000000000047df3c in uvw::Thread::~Thread (this=0x7192f0, __in_chrg=<optimized out>) at /home/evan/code/uvw/src/uvw/thread.hpp:51
#4  0x0000000000488fc0 in __gnu_cxx::new_allocator<uvw::Thread>::destroy<uvw::Thread> (this=0x7192f0, __p=0x7192f0) at /usr/include/c++/7/ext/new_allocator.h:140
#5  0x0000000000488d29 in std::allocator_traits<std::allocator<uvw::Thread> >::destroy<uvw::Thread> (__a=..., __p=0x7192f0) at /usr/include/c++/7/bits/alloc_traits.h:487
#6  0x000000000048864f in std::_Sp_counted_ptr_inplace<uvw::Thread, std::allocator<uvw::Thread>, (__gnu_cxx::_Lock_policy)2>::_M_dispose (this=0x7192e0) at /usr/include/c++/7/bits/shared_ptr_base.h:535
#7  0x000000000047f872 in std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release (this=0x7192e0) at /usr/include/c++/7/bits/shared_ptr_base.h:154
#8  0x000000000047ea9d in std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count (this=0x7fffffffde88, __in_chrg=<optimized out>) at /usr/include/c++/7/bits/shared_ptr_base.h:684
#9  0x000000000047e66c in std::__shared_ptr<uvw::Thread, (__gnu_cxx::_Lock_policy)2>::~__shared_ptr (this=0x7fffffffde80, __in_chrg=<optimized out>) at /usr/include/c++/7/bits/shared_ptr_base.h:1123
#10 0x000000000047e688 in std::shared_ptr<uvw::Thread>::~shared_ptr (this=0x7fffffffde80, __in_chrg=<optimized out>) at /usr/include/c++/7/bits/shared_ptr.h:93
#11 0x000000000047ca27 in Thread_TODO_Test::TestBody (this=0x719110) at /home/evan/code/uvw/test/uvw/thread.cpp:9
#12 0x00000000004c2eff in testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void> (object=0x719110, method=&virtual testing::Test::TestBody(), location=0x4d5ddb "the test body")
    at /home/evan/code/uvw/deps/googletest/src/googletest/src/gtest.cc:2401
#13 0x00000000004bd768 in testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void> (object=0x719110, method=&virtual testing::Test::TestBody(), location=0x4d5ddb "the test body")
    at /home/evan/code/uvw/deps/googletest/src/googletest/src/gtest.cc:2437
#14 0x00000000004a3144 in testing::Test::Run (this=0x719110) at /home/evan/code/uvw/deps/googletest/src/googletest/src/gtest.cc:2473
#15 0x00000000004a39e4 in testing::TestInfo::Run (this=0x716f20) at /home/evan/code/uvw/deps/googletest/src/googletest/src/gtest.cc:2655
#16 0x00000000004a4009 in testing::TestCase::Run (this=0x717390) at /home/evan/code/uvw/deps/googletest/src/googletest/src/gtest.cc:2773
#17 0x00000000004aa9fc in testing::internal::UnitTestImpl::RunAllTests (this=0x717060) at /home/evan/code/uvw/deps/googletest/src/googletest/src/gtest.cc:4673
#18 0x00000000004c3f01 in testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool> (object=0x717060,
    method=(bool (testing::internal::UnitTestImpl::*)(testing::internal::UnitTestImpl * const)) 0x4aa71c <testing::internal::UnitTestImpl::RunAllTests()>, location=0x4d6690 "auxiliary test code (environments or event listeners)")
    at /home/evan/code/uvw/deps/googletest/src/googletest/src/gtest.cc:2401
#19 0x00000000004be47e in testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool> (object=0x717060,
    method=(bool (testing::internal::UnitTestImpl::*)(testing::internal::UnitTestImpl * const)) 0x4aa71c <testing::internal::UnitTestImpl::RunAllTests()>, location=0x4d6690 "auxiliary test code (environments or event listeners)")
    at /home/evan/code/uvw/deps/googletest/src/googletest/src/gtest.cc:2437
#20 0x00000000004a965c in testing::UnitTest::Run (this=0x704400 <testing::UnitTest::GetInstance()::instance>) at /home/evan/code/uvw/deps/googletest/src/googletest/src/gtest.cc:4281
#21 0x0000000000489335 in RUN_ALL_TESTS () at /home/evan/code/uvw/deps/googletest/src/googletest/include/gtest/gtest.h:2237
#22 0x00000000004892cf in main (argc=1, argv=0x7fffffffe378) at /home/evan/code/uvw/deps/googletest/src/googletest/src/gtest_main.cc:37

Coverage decreased (-0.002%) to 97.934% when pulling dfc33ac11f1816886b54393c1fb0ad771b9c6f8a on eklitzke:thread_join into badda7e7028d1c31144bf8957ec6a2a8372afd29 on skypjack:master.

I'm back. Time to look into your issues. ;-)
I don't see how this solves the problem. get returns a valid pointer in every case. Can you explain a bit better what's the purpose of this change?

Oh, I see. The problem is that we are calling pthread_join on a thread that isn't started.
The error is within that function. The get member function of underlying_type never returns a null pointer.
Probably it's enough to invoke run in the test to get rid of the segfault. If you can have a try with it, it would help. I'm not able to reproduce the issue.
Thank you.

Please, test the upstream. I'm going to close the PR otherwise for I've not received an answer so far.

Not reproducible and the PR doesn't seem to address the error reported.
Pushed upstream a change that could fix the problem. Please, test it.
I'm closing the PR for it cannot be merged as it is. Feel free to update and reopen it if needed.


Enable edge events

Hey there,
I'm having trouble with the edge events (overEdge, outEdge, clickEdge, etc.) not invoking the callbacks in my code. Other events on nodes, the click events and double click events are working.
I'm wondering if there is documentation somewhere on how to set up edge events?
Thanks for the great library!

Hello @sonph. Can you try to set the enableEdgeHovering to true and see whether this fixes your issue?

It still doesn't work with enableEdgeHovering: true. I modified events.html in the examples and replaced all sigma imports with a single file sigma.min.js version 1.0.3 straight from npm. Same results. All events work except for edge events.

I think the lastest 1.0.3 version on npm is vastly outdated. You should probably try to clone the repo and build the files and see whether this changes something.

Thanks @Yomguithereal using the newest build solves the problem. Apparently this feature is added after the 1.0.3 release.

We really need to cut a release :).

True haha


Add favicon

with the orange color taken from the voxpupuli logo.

Based on the icon created by Jonathan Coutiño
(https://thenounproject.com/ralts01/) under
the Attribution 3.0 Unported (CC BY 3.0) license
(https://creativecommons.org/licenses/by/3.0/),
downloaded from the Noun Project (https://thenounproject.com).

Just to clarify: I don't want to make it an "official" logo or such thing. I am afraid that trying to do that would result in a lot of bikeshedding.
This is just a favicon that looks like a board (to me) and has a voxpupuli color that I propose to add for a purely practical reason: it's faster to find a tab in a browser if it has a distinctive icon instead of having to read the title.

can you please rebase against master so we get rid of the merge commit?

Sure, rebased.


Eslint Later Versions Async isPathIgnored

In the latest versions of Eslint, isPathIgnored is an async function and returns a promise, hence this part of the docs no longer works: https://github.com/okonet/lint-staged#how-can-i-ignore-files-from-eslintignore-
Here's what I've done to fix - feel free to use it in your docs or modify as you see fit (there's maybe a better way of returning the error rather than just exiting but I didn't see anything in the docs about it).
This uses this helper utility (very simple to write a similar function like it if you like): https://www.npmjs.com/package/node-filter-async
The try / catch and console logs are in case there is some issue with eslint, like parsing the config for example.
const { ESLint } = require("eslint");
const filterAsync = require("node-filter-async").default;

const eslintCli = new ESLint();

const removeIgnoredFiles = async (files) => {
  const filteredFiles = await filterAsync(files, async (file) => {
    const isIgnored = await eslintCli.isPathIgnored(file);
    return !isIgnored;
  });
  return filteredFiles.join(" ");
};

module.exports = {
  "**/*.{ts,tsx,js,jsx}": async (files) => {
    try {
      const filesToLint = await removeIgnoredFiles(files);
      return [`eslint --max-warnings=0 ${filesToLint}`];
    } catch (error) {
      console.log(error);
      process.exit(1);
    }
  },
};

Can you create a PR for the docs please?

Done.

A slight variation of the function that doesn't use an external dependency:
const removeIgnoredFiles = async files => {
  const included = [];
  for (const file of files) {
    if (!(await eslintCli.isPathIgnored(file))) included.push(file);
  }
  return included;
};


Dart roll regressed complex_layout_scroll_perf__timeline_summary

Dart roll https://github.com/flutter/flutter/commit/bc301263538776aec7eff1631bc1b58f43a5c953 or https://github.com/flutter/flutter/commit/57187b00b2172e7c3e394319764ec95032a0c97f had negative impact on two metrics in the complex_layout_scroll_perf__timeline_summary benchmarks:

missed_frame_build_budget_count
average_frame_build_time_millis

/cc @aam

The following microbenchmarks were also affected:

stock_animation_subsequent_frame_average
stock_animation_close_first_frame_average
stock_build_iteration

@a-siva

https://github.com/dart-lang/sdk/commit/c3b59399659804ee27629c285b1b630283cef221 seems to be the culprit with "missed_frame_build_budget_count" metric 8-run average on Moto G4 goes from 20.5 @839c03e092 to 30.5 @c3b5939965 cc @alexmarkov

@aam, thank you for triaging. I'll take a look.
Possible reason for this regression is https://github.com/dart-lang/sdk/issues/33364, which is fixed on the tip of Dart SDK.

Double checked the Dart SDK commits in that roll. I'm getting quite stable results for missed_frame_build_budget_count metric on my Moto G4:
https://github.com/dart-lang/sdk/commit/35b17f373014cdb54dc7f80cfa59cc7d5f9f3803 6, 5, 5, 6, 5
https://github.com/dart-lang/sdk/commit/0bec11a4f27ea49d09694ef6e008ad2e6db7a3d7 6, 7, 6, 7, 6
average_frame_build_time_millis is not so stable:
https://github.com/dart-lang/sdk/commit/35b17f373014cdb54dc7f80cfa59cc7d5f9f3803
2.520408163 | 2.203045685 | 2.407216495 | 2.324873096 | 2.153061224
Min: 2.153061224
Avg: 2.321720933
https://github.com/dart-lang/sdk/commit/0bec11a4f27ea49d09694ef6e008ad2e6db7a3d7
2.384615385 | 2.578680203 | 2.404145078 | 2.471204188 | 2.286458333
Min: 2.286458333
Avg: 2.425020637
These number are similar to what benchmarks dashboard shows. I can conclude that regressions of missed_frame_build_budget_count and average_frame_build_time_millis metrics of complex_layout_scroll_perf__timeline_summary benchmark were caused by https://github.com/dart-lang/sdk/commit/0bec11a4f27ea49d09694ef6e008ad2e6db7a3d7.
Also see https://github.com/flutter/flutter/issues/18378.
/cc @zanderso

It looks like these benchmarks improved after the recent roll that included @rmacnak-google 's fix. @goderbauer can we close this?

Sounds good.

Looking back, it really doesn't seem to have improved after all, at least not back to the original level.


affected/package:  strings

What version of Go are you using (go version)?
GO1.19

$ go version

Does this issue reproduce with the latest release?
yes
What operating system and processor architecture are you using (go env)?
set GOVERSION=go1.19
go env Output
$ go env

What did you do?

link:   https://go.dev/play/p/f9aHqt7Ryh0
fileName := "14-010-Zirk10000-1116675.A53"
fmt.Println(strings.Trim(fileName, filepath.Ext(fileName)))      //14-010-Zirk10000-111667？
fmt.Println(strings.TrimRight(fileName, filepath.Ext(fileName))) //14-010-Zirk10000-111667？
What did you expect to see?
14-010-Zirk10000-1116675
What did you see instead?
14-010-Zirk10000-111667

You want TrimSuffix, not TrimRight.
The Go project doesn't use the issue tracker for questions. See https://golang.org/wiki/Questions.


S92motion fails to stop

root@openipc-gk7205:~# /etc/init.d/S92motion start
Starting motion detection: 2023-02-06 16:15:50 [3036:motion] Plugin motion initialized.
2023-02-06 16:15:50 [3036:motion] Reading configuration from /etc/webui/motion.conf.
2023-02-06 16:15:50 [3036:motion] Check lock file /var/run/process-3036.pid.
2023-02-06 16:15:50 [3036:motion] Create lock file /var/run/process-3036.pid.
OK
root@openipc-gk7205:~# cat /var/run/motiondetection.pid
cat: can't open '/var/run/motiondetection.pid': No such file or directory
root@openipc-gk7205:~# /etc/init.d/S92motion stop
Stopping motion detection: FAIL

остановка сервиса сделана через удаление /tmp/motion.stop который не удаляется при /etc/init.d/S92motion stop. Если я правильно понял

Confirmed. The PID returned by the start-stop-daemon doesn't match the process spawned, so a wrong number is saved.

Fixed with a new motion detection mechanism.


Adding configuration files after fly.io deployment

Also enabling fly deployments on the main branch

Confirmed fly.io development working at https://video-recommendations-cyf.fly.dev/


Chapter 3 - JdbcTemplate

Unsatisfied dependency expressed through constructor parameter 0; nested exception is sorg.springframework.beans.factory.BeanCreationException

Error creating bean with name 'jdbcIngredientRepository' defined in file [C:\Users\sprajapati26\Documents\Github\spring 5 in action\chp3\taco-jdbc\target\classes\tacos\data\JdbcIngredientRepository.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSourceScriptDatabaseInitializer' defined in class path resource [org/springframework/boot/autoconfigure/sql/init/DataSourceInitializationConfiguration.class]: Invocation of init method failed; nested exception is org.springframework.jdbc.datasource.init.ScriptStatementFailedException: Failed to execute SQL script statement #5 of URL [file:/C:/Users/sprajapati26/Documents/Github/spring%205%20in%20action/chp3/taco-jdbc/src/main/resources/schema.sql]: alter table Taco_Ingredients add foreign key (ingredient) references Ingredient(id); nested exception is org.h2.jdbc.JdbcSQLSyntaxErrorException: Constraint "PRIMARY KEY | UNIQUE (ID)" not found; SQL statement:
alter table Taco_Ingredients add foreign key (ingredient) references Ingredient(id) [90057-214]

marking it as closed, the issue was due to primary key missing in the Ingredients table..
create table if not exists Ingredient (
id varchar(4) not null primary key,
name varchar(25) not null,
type varchar(10) not null
);


Support BoxedRep

I believe this is for https://gitlab.haskell.org/ghc/ghc/-/merge_requests/2249.

Correct. That is what it is for.

Hi!  As of today, patches for the ghc-head branch must be done on the Haddock mirror on GitLab, at https://gitlab.haskell.org/ghc/haddock.


Does this still work?

Not really an issue, more of a question. I've had code running against the myQ API and as of a week or so ago (Nov 20ish) the API stopped responding resulting in a 216 Unauthorized. I'm wondering if you've hit the same result.

I had to update my own integration about a month ago. The security token needs to be sent in the header now, not just as a query string variable. MyQ had gradually been making changes, and this has affected more and more people over time.
Here's the commit from my integration: https://github.com/brbeaird/SmartThings_MyQ/commit/0407ad141d982b92f04362b523554b75c2090fdb

Ah that's it. I see it in the android apk. Thank you sir.


"Heat" up Arcs

In #2984 , a higher-order-types (hot.ts) file was introduced. Subsequently (in #3012, #2998, etc.), additional types were added.
Let's update the codebase to express functions and data types as applications of higher order types instead of "hard-coded" ones.
Let's heat up Arcs!

Any interest in something like this:
export type Predicate<T> = (input: T) => boolean;
export namespace Predicate {
  export const alwaysTrue = <T>() => true;
  export const alwaysFalse = <T>() => false;
  // TODO and(..) negate(..) or(..) etc..
}

Looking into starting a Guava for Typescript.  we'll see how that progresses..