ResourceHttpRequestHandlerTests
Tests
| Test |
Duration |
Result |
| directory() |
0.003s |
passed |
| directoryInJarFile() |
0.013s |
passed |
| doOverwriteExistingCacheControlHeaders() |
0.003s |
passed |
| getMediaTypeWithFavorPathExtensionOff() |
0.003s |
passed |
| getResource() |
0.005s |
passed |
| getResourceFromAlternatePath() |
0.005s |
passed |
| getResourceFromSubDirectory() |
0.017s |
passed |
| getResourceFromSubDirectoryOfAlternatePath() |
0.009s |
passed |
| getResourceHttp10BehaviorCache() |
0.006s |
passed |
| getResourceHttp10BehaviorNoCache() |
0.003s |
passed |
| getResourceHttpHeader() |
0.004s |
passed |
| getResourceHttpOptions() |
0.001s |
passed |
| getResourceNoCache() |
0.004s |
passed |
| getResourceWithHtmlMediaType() |
0.004s |
passed |
| getResourceWithMediaTypeResolvedThroughServletContext() |
0.017s |
passed |
| getResourceWithRegisteredMediaType() |
0.005s |
passed |
| getVersionedResource() |
0.010s |
passed |
| ignoreInvalidEscapeSequence() |
0.004s |
passed |
| initAllowedLocations() |
0.001s |
passed |
| initAllowedLocationsWithExplicitConfiguration() |
0s |
passed |
| missingResourcePath() |
0.001s |
passed |
| modified() |
0.003s |
passed |
| noPathWithinHandlerMappingAttribute() |
0.002s |
passed |
| notModified() |
0.003s |
passed |
| partialContentByteRange() |
0.005s |
passed |
| partialContentByteRangeLargeEnd() |
0.005s |
passed |
| partialContentByteRangeNoEnd() |
0.004s |
passed |
| partialContentByteRangeWithEncodedResource(GzippedFiles) |
0.020s |
passed |
| partialContentInvalidRangeHeader() |
0.003s |
passed |
| partialContentMultipleByteRanges() |
0.007s |
passed |
| partialContentSuffixRange() |
0.005s |
passed |
| partialContentSuffixRangeLargeSuffix() |
0.035s |
passed |
| partialContentWithHttpHead() |
0.045s |
passed |
| processPath() |
0.001s |
passed |
| resolvePathWithTraversal() |
0.086s |
passed |
| resourceNotFound() |
0.027s |
passed |
| testInvalidPath() |
0.010s |
passed |
| unsupportedHttpMethod() |
0.002s |
passed |
Standard output
04:00:42.264 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [../testsecret/secret.txt]
04:00:42.265 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [test/../../testsecret/secret.txt]
04:00:42.265 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [:/../../testsecret/secret.txt]
04:00:42.266 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path represents URL or has "url:" prefix: [file:/D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.266 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path represents URL or has "url:" prefix: [/file:/D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.270 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path represents URL or has "url:" prefix: [url:/D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.270 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path represents URL or has "url:" prefix: [/url:/D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.271 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [/../../D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.271 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [/../testsecret/secret.txt]
04:00:42.271 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [/../testsecret/secret.txt]
04:00:42.271 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [/../../D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.372 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [../testsecret/secret.txt]
04:00:42.378 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [test/../../testsecret/secret.txt]
04:00:42.383 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [:/../../testsecret/secret.txt]
04:00:42.385 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path represents URL or has "url:" prefix: [file:/D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.389 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path represents URL or has "url:" prefix: [/file:/D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.390 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path represents URL or has "url:" prefix: [url:/D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.390 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path represents URL or has "url:" prefix: [/url:/D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.394 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [/../../D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.395 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [/../testsecret/secret.txt]
04:00:42.395 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [/../testsecret/secret.txt]
04:00:42.397 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [../testsecret/secret.txt]
04:00:42.397 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [test/../../testsecret/secret.txt]
04:00:42.398 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [:/../../testsecret/secret.txt]
04:00:42.399 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path represents URL or has "url:" prefix: [file:/D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.399 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path represents URL or has "url:" prefix: [/file:/D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.399 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path represents URL or has "url:" prefix: [url:/D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.399 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path represents URL or has "url:" prefix: [/url:/D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.402 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [/../../D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.402 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [/../testsecret/secret.txt]
04:00:42.403 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [/../testsecret/secret.txt]
04:00:42.405 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [../testsecret/secret.txt]
04:00:42.406 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [test/../../testsecret/secret.txt]
04:00:42.406 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [:/../../testsecret/secret.txt]
04:00:42.407 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path represents URL or has "url:" prefix: [file:/D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.409 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path represents URL or has "url:" prefix: [/file:/D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.409 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path represents URL or has "url:" prefix: [url:/D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.410 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path represents URL or has "url:" prefix: [/url:/D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.412 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [/../../D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.412 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [/../testsecret/secret.txt]
04:00:42.412 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [/../testsecret/secret.txt]
04:00:42.414 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [../testsecret/secret.txt]
04:00:42.415 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [test/../../testsecret/secret.txt]
04:00:42.416 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [:/../../testsecret/secret.txt]
04:00:42.419 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path represents URL or has "url:" prefix: [file:/D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.420 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path represents URL or has "url:" prefix: [/file:/D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.420 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path represents URL or has "url:" prefix: [url:/D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.421 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path represents URL or has "url:" prefix: [/url:/D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.423 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [/../../D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.423 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [/../testsecret/secret.txt]
04:00:42.423 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [/../testsecret/secret.txt]
04:00:42.427 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [../testsecret/secret.txt]
04:00:42.427 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [test/../../testsecret/secret.txt]
04:00:42.428 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [:/../../testsecret/secret.txt]
04:00:42.429 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path represents URL or has "url:" prefix: [file:/D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.429 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path represents URL or has "url:" prefix: [/file:/D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.429 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path represents URL or has "url:" prefix: [url:/D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.430 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path represents URL or has "url:" prefix: [/url:/D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.432 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [/../../D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.432 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [/../testsecret/secret.txt]
04:00:42.432 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [/../testsecret/secret.txt]
04:00:42.434 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [../testsecret/secret.txt]
04:00:42.435 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [test/../../testsecret/secret.txt]
04:00:42.435 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [:/../../testsecret/secret.txt]
04:00:42.436 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path represents URL or has "url:" prefix: [file:/D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.436 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path represents URL or has "url:" prefix: [/file:/D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.437 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path represents URL or has "url:" prefix: [url:/D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.437 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path represents URL or has "url:" prefix: [/url:/D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.439 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [/../../D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.439 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [/../testsecret/secret.txt]
04:00:42.439 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [/../testsecret/secret.txt]
04:00:42.443 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [../testsecret/secret.txt]
04:00:42.445 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [test/../../testsecret/secret.txt]
04:00:42.445 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [:/../../testsecret/secret.txt]
04:00:42.446 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path represents URL or has "url:" prefix: [file:/D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.446 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path represents URL or has "url:" prefix: [/file:/D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.446 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path represents URL or has "url:" prefix: [url:/D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.446 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path represents URL or has "url:" prefix: [/url:/D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.448 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [/../../D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.448 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [/../testsecret/secret.txt]
04:00:42.448 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [/../testsecret/secret.txt]
04:00:42.450 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [../testsecret/secret.txt]
04:00:42.451 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [test/../../testsecret/secret.txt]
04:00:42.451 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [:/../../testsecret/secret.txt]
04:00:42.452 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path represents URL or has "url:" prefix: [file:/D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.452 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path represents URL or has "url:" prefix: [/file:/D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.453 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path represents URL or has "url:" prefix: [url:/D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.453 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path represents URL or has "url:" prefix: [/url:/D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.455 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [/../../D:/IDEA/source_code/spring-framework-V5.1.11.RELEASE/spring-framework/spring-webmvc/build/resources/test/org/springframework/web/servlet/resource/testsecret/secret.txt]
04:00:42.455 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [/../testsecret/secret.txt]
04:00:42.456 [Test worker] WARN o.s.w.s.r.ResourceHttpRequestHandler - Path contains "../" after call to StringUtils#cleanPath: [/../testsecret/secret.txt]


Uses of Interface
jdraw.framework.Figure
-
Packages that use Figure Package Description jdraw.figures Contains all implementations of figures that can be displayed and manipulated in the JDraw editor.jdraw.framework Contains all interfaces and implementations of the base framework of the JDraw editor.jdraw.std Contains standard implementations of framework interfaces. -
-
Uses of Figure in jdraw.figures
Classes in jdraw.figures that implement Figure Modifier and Type Class Description class
Rect
Represents rectangles in JDraw.Methods in jdraw.figures that return Figure Modifier and Type Method Description Figure
Rect. clone()
-
Uses of Figure in jdraw.framework
Methods in jdraw.framework that return Figure Modifier and Type Method Description Figure
Figure. clone()
Returns a clone of this figure.Figure
DrawModelEvent. getFigure()
Returns the figure which initiated the event.Figure
FigureEvent. getFigure()
Returns the figure which changed.Figure
FigureHandle. getOwner()
Gets the handle's owner.Methods in jdraw.framework that return types with arguments of type Figure Modifier and Type Method Description Iterable<Figure>
FigureGroup. getFigureParts()
Returns the parts of a figure which consists of several parts.Iterable<Figure>
DrawModel. getFigures()
Returns an iterator which can be used to iterate over all figures of a draw model.List<Figure>
DrawView. getSelection()
Returns a list which contains the currently selected figures.Methods in jdraw.framework with parameters of type Figure Modifier and Type Method Description void
DrawModel. addFigure(Figure f)
Adds a new figure to the draw model.void
DrawView. addToSelection(Figure f)
Adds a figure to the selected figures.void
DrawModel. removeFigure(Figure f)
Removes a given figure from the draw model.void
DrawView. removeFromSelection(Figure f)
Removes a figure from the selected figures.void
DrawModel. setFigureIndex(Figure f, int index)
Sets the index of a given figure.Constructors in jdraw.framework with parameters of type Figure Constructor Description DrawModelEvent(DrawModel source, Figure figure, DrawModelEvent.Type type)
Constructs a DrawModelEvent object with the specified model.FigureEvent(Figure source)
Constructs a FigureEvent object with the specified figure. -
Uses of Figure in jdraw.std
Methods in jdraw.std that return types with arguments of type Figure Modifier and Type Method Description Iterable<Figure>
StdDrawModel. getFigures()
List<Figure>
StdDrawView. getSelection()
Methods in jdraw.std with parameters of type Figure Modifier and Type Method Description void
StdDrawModel. addFigure(Figure f)
void
StdDrawView. addToSelection(Figure f)
void
StdDrawModel. removeFigure(Figure f)
void
StdDrawView. removeFromSelection(Figure f)
void
StdDrawModel. setFigureIndex(Figure f, int index)
Method parameters in jdraw.std with type arguments of type Figure Modifier and Type Method Description void
StdContext. bringToFront(DrawModel model, List<Figure> selection)
Changes the order of figures and moves the figures in the selection to the front, i.e.void
StdContext. sendToBack(DrawModel model, List<Figure> selection)
Changes the order of figures and moves the figures in the selection to the back, i.e.Constructors in jdraw.std with parameters of type Figure Constructor Description MoveCommand(Figure aFigure, int dx, int dy)
A move command contains the information about the figure and its relative distance in the move operation.RemoveFigureCommand(DrawModel model, Figure figure)
To remove a figure we must know its identity and the model from which it should be removed.
-


public class ArrayBitmap
extends java.lang.Object
| Modifier and Type | Class and Description |
|---|---|
static interface |
ArrayBitmap.IVisitor
Interface for visiting every pixel in an ArrayBitmap.
|
| Constructor and Description |
|---|
ArrayBitmap(int width,
int height)
Creates a new ArrayBitmap
|
ArrayBitmap(int width,
int height,
int[] pixels)
Creates a new ArrayBitmap from an existing array of 32-bit ARGB pixels.
|
ArrayBitmap(int width,
int height,
int[] pixels,
int offsetX,
int offsetY,
int rowOffset)
Creates a new ArrayBitmap from a subset of an existing array of 32-bit
ARGB pixels.
|
ArrayBitmap(java.lang.String fileName)
Create an ArrayBitmap from a file
|
| Modifier and Type | Method and Description |
|---|---|
void |
clear(int color)
Sets every pixel in the image to the same 32-bit ARGB color.
|
int |
get(int x,
int y)
Get a pixel at a specific location.
|
int |
getHeight()
Gets the height of this image.
|
int |
getWidth()
Gets the width of this image.
|
boolean |
isMoreOpaqueThanTransparent(int x,
int y)
Returns true if the the pixel's alpha is more than 0.5.
|
void |
save(java.lang.String fileName,
java.lang.String outputFormat)
Saves an ArrayBitmap to a file.
|
void |
set(int x,
int y,
int pixel)
Sets a pixel at a specific location.
|
void |
visitAll(ArrayBitmap.IVisitor visitor)
Visits every pixel in the image.
|
public ArrayBitmap(int width, int height)
width
- The width, in pixels, of the bitmap.height
- The height, in pixels, of the bitmap.public ArrayBitmap(int width, int height, int[] pixels)
width
- The width, in pixels, of the bitmap.height
- The height, in pixels, of the bitmap.pixels
- The array of 32-bit ARGB pixels to be used.public ArrayBitmap(int width, int height, int[] pixels, int offsetX, int offsetY, int rowOffset)
width
- The width, in pixels, of the bitmap.height
- The height, in pixels, of the bitmap.pixels
- The array of 32-bit ARGB pixels to be used.offsetX
- The start of the image in the pixels
on X.offsetY
- The start of the image in the pixels
on Y.rowOffset
- The length of one row of pixels in the pixels
array.public ArrayBitmap(java.lang.String fileName) throws java.io.IOException
fileName
- The path and name of a file containing an image.java.io.IOException
- If the file cannot be loaded.public void save(java.lang.String fileName, java.lang.String outputFormat) throws java.io.IOException
fileName
- The path and name of the file to save to.outputFormat
- The image format to be used. For example, "png" and "jpg" are
valid values.java.io.IOException
- If the image cannot be saved.public void visitAll(ArrayBitmap.IVisitor visitor)
visitor
- To be called at each pixel visited.public void clear(int color)
color
- The 32-bit ARGB color to set every pixel in the image to.public int getWidth()
public int getHeight()
public boolean isMoreOpaqueThanTransparent(int x, int y)
x
- The X location of the pixel.y
- The Y location of the pixel.public int get(int x, int y)
x
- The X location of the pixel.y
- The Y location of the pixel.public void set(int x, int y, int pixel)
x
- The X location of the pixel.y
- The Y location of the pixel.pixel
- The 32-bit ARGB color to set the pixel to.


5
1 Imitate God because he loves us, because you are his children.
2 Live by loving others just like Christ loved us when he gave himself up on the cross as the offering and sacrifice to God for our sins, which was very pleasing to God.
3 Do not suggest any kind of immoral act and do not desire what others have or wrong things others do. Such sins can cause people to say bad things about God's people, who are together set apart for God, not for sin.
4 Do not tell obscene stories to others or say foolish things or joke about committing sins. Such things are not what people who belong to God talk about. Instead, thank God for his love when you talk to others.
5 You can be sure of this: No person who is sexually immoral or indecent, or who is greedy (for this is the same as worshiping idols) will be among God's people over whom Christ rules as king.
6 Do not let anyone deceive you with false arguments. Because they do these sinful things, God will be angry with the people who disobey him.
7 So do not join with those who do these kinds of sins.
8 Before you believed in the Lord Jesus, you were living in sinful disobedience, as if a dark night surrounded you all the time. But now you live in the light of the Lord.
9 Like light produces good things, so also those who live in the light of Jesus know and do what is good, right, and true;
10 they openly show what pleases the Lord.
11 Do not participate together with those who are doing the worthless deeds done in spiritual darkness. Instead, just say, "Those sinful acts are worthless,"
12 because the evil things people do in the secret of darkness are too shameful to describe in the light.
13 Everything that light exposes can then be clearly seen and better understood
14 because the light shows what it truly is. It is like when God's word explains the sins that destroy people and Jesus who forgives and renews people. So believers say,
"Wake up from your sleep
and arise from living like dead people.
Christ will enable you to understand
his forgiveness and new life."
15 So be very careful how you live.  Instead, behave as wise people do.
16 Use the time you have on earth wisely because the days here are filled with evil.
17 So do not be foolish.  Instead, let God's Spirit control what you do at all times.
19 Sing to each other Psalms, and sing songs about Christ, and sing songs that God's Spirit gives you. Sing these Psalms and other songs from your hearts to praise the Lord Jesus.
20 At all times thank God the Father for everything because of what the Lord Jesus Christ has done for you.
21 Humbly submit yourselves to each other because you honor Christ.
22-23 Wives should submit to their own husband's leadership as they do to the Lord Jesus, because the husband is the leader of the wife as also Christ is the leader of the worldwide assembly of believers. He is the Savior who has saved all believers from being condemned for their sins.
24 Just like all believers submit themselves to the authority of Christ, the women must submit themselves completely to the authority of their husbands.
25 Each of you husbands, love your wife as Christ loved all believers and gave up his own life for us on the cross,
26 so that he might set us apart for himself. By the power of his word Jesus purified believers by removing the punishment for our sins, as if he had washed us with water.
27 Now Christ can present all believers to himself as a completely clean, forgiven, faultless group, without sin.
28 Each man should love his wife as he loves his own body. When men love their wives, it is as though they loved themselves,
29-30 because no one ever hated his own body. Instead, he feeds his own body and cares for it, just like Christ also cares for all us believers in his worldwide assembly. We have become one group of believers that belongs to him.
31 The Scriptures say this about people who marry,
"When a man and a woman marry, they should permanently leave their fathers and mothers. They should be joined as husband and wife, and the two of them will become as though they were one person."
32 It is difficult to understand the meaning of these things that God has now revealed, but I am telling you about Christ's love for his worldwide assembly of believers.
33 However, as for you, each man must love his wife just as he loves himself, and each woman must respect her husband.


Jamie Carragher reacts to Tottenham Hotspur’s appointment of Jose Mourinho
Jamie Carragher has his say on Jose Mourinho's appointment as Tottenham Hotspur's new manager
by The Sport Review staffJamie Carragher believes that Jose Mourinho could be the man to deliver a trophy at Tottenham Hotspur following his appointment as the club’s new manager.
Mourinho was officially confirmed as Spurs’ new boss on Wednesday morning after the north London club opted to sack Mauricio Pochettino on Tuesday night.
Spurs chairman Daniel Levy said he was “reluctant” to sack Pochettino, with Mourinho’s first game in charge of the Lilywhites an away clash against West Ham United this weekend.
Mourinho has been out of work since he was sacked by Manchester United in December of last year and he will now try to prove himself once again in the Premier League.
Spurs reached the Champions League final last season under Pochettino but Carragher seems to think that Mourinho could be the man to take them one step further in their quest for silverware.
Speaking in an interview with Sky Sports, Carragher said: “If Jose wants to get into top-level management, you’ve only got to look at his CV.
“People question the Manchester United job, but his career as a whole has been hugely successful, and that’s one thing Tottenham have lacked at the moment.
“As well as Pochettino has done, they haven’t quite got over the line to get a trophy, and that’s what Jose Mourinho does when he goes to a club.”
Spurs currently find themselves down in 14th place in the Premier League table and having won just three of their opening 12 games in the top flight.
They have lost six of their opening 12 games to leave them well off the pace in the race to seal Champions League qualification for next season.


/**
* HashTable.js - JavaScript OO Implementation of Simple HashTable Data Structure
*
* There are some problems with this implementation. Come back to this later.
* HashTables are common and important data structures. Make sure to come back to
* this!!!
*/
/**
* @class
* A HashTable, like a dictionary, is a data structure that maps keys to values.
* Hashtables use a function to compute an index on an array of slots, sometimes called
* 'buckets'. Hashtables permit relatively fast insertion, deletion, and retrieval but
* perform less than optimally for search operations such as identifying the minimum and
* maximum values of a set of data. Hashtables must be designed and implemented to avoid
* collisions. A collision occurs when the hashing function generates a non-unique index
* for two separate inputs. A HashTable ADT includes the following operations:
*
*

*
put - add a data element to the hashtable;

*
get - get a data element from the hashtable;

*
getHash - compute the hashing index;

*
toString - get a string representation of the distribution of hashed data;

*

*/
var HashTable = (function() {
/**
* @constructor
* @description Create and initialise new HashTable
*/
function HashTable() {
// To avoid clustering in the underlying data structure the array size is set
// to a prime number
this.table = new Array(137);
}
HashTable.prototype = {
getHash: function(str) {
const H = 37;
var total = 0;
for(var i = 0; i < str.length; i++) {
total += H * total + str.charCodeAt(i);
}
total = total % this.table.length;
if(total < 0) {
total += this.table.length-1;
}
return parseInt(total);
},
put: function(key, data) {
var position = this.getHash(key);
if(this.table[position] === undefined) {
this.table[position] = key;
this.values[position] = data;
}
else {
while (this.table[position] != undefined) {
position++;
}
this.table[position] = key;
this.values[position] = data;
}
},
get: function(key) {
var hash = -1;
hash = this.getHash(key);
if(hash > -1) {
for(var i = hash; this.table[hash] != undefined; i++) {
if(this.table[hash] === key) {
return this.values[hash];
}
}
}
return undefined;
},
toString: function() {
var n = 0;
for (var i = 0; i < this.table.length; ++i) {
if(this.table[i] != undefined) {
print(i + ": " + this.table[i]);
}
}
}
};
return HashTable;
}());


Write a function that determines whether a driver is within the speed limit.
Add the cook workflow separated by comma:
• chop – divide the number by two
• dice – square root of number
• spice – add 1 to number
• bake – multiply number by 3
• fillet – subtract 20% from number


Package com.google.zxing.common
Interface ECIInput
- All Known Implementing Classes:
MinimalECIInput
public interface ECIInput
Interface to navigate a sequence of ECIs and bytes.
- Author:
- Alex Geller
-
Method Summary
Modifier and TypeMethodDescriptionchar
charAt
(int index) Returns thebyte
value at the specified index.int
getECIValue
(int index) Returns theint
ECI value at the specified index.boolean
haveNCharacters
(int index, int n) boolean
isECI
(int index) Determines if a value is an ECIint
length()
Returns the length of this input.subSequence
(int start, int end) Returns aCharSequence
that is a subsequence of this sequence.
-
Method Details
-
length
int length()Returns the length of this input. The length is the number ofbyte
s in or ECIs in the sequence.- Returns:
- the number of
char
s in this sequence
-
charAt
char charAt(int index) Returns thebyte
value at the specified index. An index ranges from zero tolength() - 1
. The firstbyte
value of the sequence is at index zero, the next at index one, and so on, as for array indexing.- Parameters:
index
- the index of thebyte
value to be returned- Returns:
- the specified
byte
value as character or the FNC1 character - Throws:
IndexOutOfBoundsException
- if theindex
argument is negative or not less thanlength()
IllegalArgumentException
- if the value at theindex
argument is an ECI (@see #isECI)
-
subSequence
Returns aCharSequence
that is a subsequence of this sequence. The subsequence starts with thechar
value at the specified index and ends with thechar
value at indexend - 1
. The length (inchar
s) of the returned sequence isend - start
, so ifstart == end
then an empty sequence is returned.- Parameters:
start
- the start index, inclusiveend
- the end index, exclusive- Returns:
- the specified subsequence
- Throws:
IndexOutOfBoundsException
- ifstart
orend
are negative, ifend
is greater thanlength()
, or ifstart
is greater thanend
IllegalArgumentException
- if a value in the rangestart
-end
is an ECI (@see #isECI)
-
isECI
boolean isECI(int index) Determines if a value is an ECI- Parameters:
index
- the index of the value- Returns:
- true if the value at position
index
is an ECI - Throws:
IndexOutOfBoundsException
- if theindex
argument is negative or not less thanlength()
-
getECIValue
int getECIValue(int index) Returns theint
ECI value at the specified index. An index ranges from zero tolength() - 1
. The firstbyte
value of the sequence is at index zero, the next at index one, and so on, as for array indexing.- Parameters:
index
- the index of theint
value to be returned- Returns:
- the specified
int
ECI value. The ECI specified the encoding of all bytes with a higher index until the next ECI or until the end of the input if no other ECI follows. - Throws:
IndexOutOfBoundsException
- if theindex
argument is negative or not less thanlength()
IllegalArgumentException
- if the value at theindex
argument is not an ECI (@see #isECI)
-
haveNCharacters
boolean haveNCharacters(int index, int n)
-


be a part of the lives that you care about
participate in life with those you love to invest what you have to offer and get more out of life with the ones who make it special.
Show them how much you care
There is no sentiment analysis or crib notes for your inner-narrative. How ever lovely your thoughts and sentiment are of a person, they remain entirely yours. Sure, you can share your feelings. Concede this affection over a bottle of wine. The next day and thereafter, just like the wine, they may remember your words but they will not be sitting back enjoying their fruit.
Emotive thrives in motion and the moment, constantly needing to run free and express itself. Care for another should be no different. So what you have love for them, you already said, “I love you.” Participate in their day and see what more you receive from life when occupying your time with those who already occupy your mind. This is not a one-sided request. It is a two-way reception.
Perhaps love is so resiliant because of the reciprocity in its gifting. The greatest thing you can give true love is your true self. The most valuable asset of the self is its time. Invest your time with those you love and you will receive the greatest tressures of life; the poppy of sentiment; bliss and emotional contentment.


Connecting people to
MODERN SOLUTIONS
CALLABORATE
Risen One Consulting is an innovative technology colutions consuulting firm focusing on cloud and modernization efforts. Our goal is to achieve focuse, strategic, and safe modernization efforts using the latest technology and expetise. Our midwest values and leading expertise in both private and public sectors make us an excellent choice for your business.
Do you like what you see?
Huh? Do ya? Cause if you do, it can be yours for Free. Hit the button below and download it. Start a new project or give an old Bootstrap 4 project a new look.
Community
Risen One Consulting is dedicated to giving back to the community, helping others, and making a difference. We work hard to give back to the communities that support us and to make our customers and employees proud by giving our time, talent, and our treasure to make the world a better place.


{% load schedule_tags %} {% for date in week_days %}
{% get_per_day_jobposts year month.id date as per_day_projects %}
{{per_day_projects|length}}


[gecode-users] Search and Recomputation
Christian Schulte
cschulte at kth.se
Fri Nov 18 13:45:34 CET 2011
Before reading part S you should read all of Chapter 7. Your questions are
answered there.
Christian
--
Christian Schulte, www.ict.kth.se/~cschulte/
-----Original Message-----
From: users-bounces at gecode.org [mailto:users-bounces at gecode.org] On Behalf
Of Guido Tack
Sent: Friday, November 18, 2011 1:39 PM
To: Max Ostrowski
Cc: users at gecode.org
Subject: Re: [gecode-users] Search and Recomputation
On 18 Nov 2011, at 13:29, Max Ostrowski wrote:
> I have 2 general questions on how search works in gecode.
>
> Search and Propagation
>
> I just read on page 306 in "Modelling and Programming with Gecode",
> that during search "pristine" clones are stored, where no propagation was
made.
> How is this possible. Considering the simple case, without
> recomputation, having a full "trail" of spaces.
> having space[0] to space[n] for the first n decision levels.
> Now i do a choice on some variable x==1.
> Now i would expect doing some propagation.
> Do you copy the space[n+1], do some propagation, and afterwards delete
> the propagated space to do another choice ?
> Do you always propagate all constraints with all choices without
> storing intermediate, usable, results of this propagation?
I'm not sure I understand this question. The only way to store results of
propagation is to store a clone of a space. That's what a search engine
does. either for every choice point, or only for some (in case of
recomputation). Please read the chapter about search engines, it will
answer your questions about which spaces are stored (in particular 36.5,
hybrid recomputation).
> 2nd Question:
>
> Using Recomputation:
>
>
> If i have stored a space S and done some choices C1,C2,C3
>
> S->C1->S1->C2->S2->C3->S3
>
> and now recognize that space S3 is failed and want to "backtrack" to
> S2 i would do
>
> S->commit(C1)
> S->commit(C2)
>
> This should lead to a space equivalent to S2. Is this space already
> propagated ?
> If i now call status() on S, is any propagator invoked?
> Does commit redo the propagation?
> Does it just restore the effects of the propagation?
> Does it just repost the decision (as i could do by hand saying post(x==1)
)?
It just posts the decision (that's the point of having choices, you only run
the entire propagation once, after posting all the choices). Calling
status() will trigger all the propagation that results from the choices you
committed to. Committing to choices is therefore the same as posting
constraints (no propagation happens until you call status()).
Cheers,
Guido
--
Guido Tack, http://people.cs.kuleuven.be/~guido.tack/
_______________________________________________
Gecode users mailing list
users at gecode.org
https://www.gecode.org/mailman/listinfo/gecode-users
More information about the users
mailing list


_type()
click to toggle source
def _type
self.read_attribute(:_type)
end
adopt(child, heredity = false)
click to toggle source
def adopt(child, heredity = false)
self.children << child
child.surname = self.surname if child.respond_to?(:surname)
if heredity
child.get_genetics!(child.parent, child.parent.spouse)
end
e = Event.new(:name => 'Adoption', :description => "#{child.name} was adopted by #{name}", age: child.age)
e.happened_to(child)
e = Event.new(:name => 'Adoption', :description => "#{child.name} was adopted", age: lambda { self.age })
e.happened_to(self)
e.happened_to(self.spouse)
child.save
child
end
age!(years = 1)
click to toggle source
def age!(years = 1)
Event.new(:name => 'Age', :description => "#{name} was magically made #{years > 0 ? ' older' : ' youthful'}.", :effect => "{|b, y| b.age += y }", age: self.age + years).happened_to(self, years)
save
self.age
end
alive?()
click to toggle source
as_json(options = { })
click to toggle source
def as_json(options = { })
super(only[[:id, :name, :age, :alive, :_type],
methods: [:children, :married?,:spouse_id, :history])
end
aunt_or_uncle_of?(other)
click to toggle source
def aunt_or_uncle_of?(other)
self.siblings.collect_concat{|s| s and s.children}.uniq.index(other) if self.siblings
end
birth!()
click to toggle source
def birth!
Event.new(:name => 'Birth', :description => "#{name} was born", :effect => "{|b| b.alive = true; b.save }", age: self.age).happened_to(self)
self
end
child_of?(other)
click to toggle source
def child_of?(other)
not other.children.index(self).nil?
end
child_sibling_of?(other)
click to toggle source
def child_sibling_of?(other)
self.children.select {|c| c and c.sibling_of?(other)}.length > 0
end
coming_of_age()
click to toggle source
def coming_of_age
@@coming_of_age
end
cousin_of?(other)
click to toggle source
def cousin_of?(other)
self.parent.siblings.collect_concat{|p| p and p.children}.index(other) if self.parent and self.parent.siblings
end
dead?()
click to toggle source
description(ex = nil)
click to toggle source
def description(ex = nil)
sorted_map = { }
self.genetic_map(ex).each_pair do |trait, value|
sorted_map[trait] = value.to_a.sort{ |a,b| b.last <=> a.last }
end
sorted_map.to_a.collect { |c| { c.first => [c.second.first.first.to_sym, c.second.first.second] }}
end
die!()
click to toggle source
def die!
raise DeathException if dead?
Event.new(:name => 'Death', :description => "#{name} died at age #{age}", :effect => "{|b| b.alive = false; b.save }", age: self.age).happened_to(self)
self
end
exchange_genome(other)
click to toggle source
def exchange_genome(other)
g_self = genotype
g_other = other.genotype
g_out = []
g_self.count.times do |i|
g_out << g_self[i].reproduce_with(g_other[i])
end
g_out
end
find_spouse()
click to toggle source
def find_spouse
self.neighbors.select{ |n| Person.marriage_strategy(n, self) }.try(:shuffle).try(:first)
end
genetic_map(ex = nil)
click to toggle source
def genetic_map(ex = nil)
ex ||= Chromosome.expressions
self.genotype.map{ |g| g.express(ex) }.inject do |m, g|
m.merge(g) do |k, original_value, new_value|
original_value.merge(new_value){ |kp, original_value_prime, new_value_prime| [original_value_prime, new_value_prime].max }
end
end.symbolize_keys
end
genotype()
click to toggle source
def genotype
chromosomes.sort
end
get(thing)
click to toggle source
def get(thing)
raise OwnershipException if owns?(thing)
self.things << thing
end
get_genetics!(parent1, parent2)
click to toggle source
def get_genetics!(parent1, parent2)
self.chromosomes.delete_all
parent1.exchange_genome(parent2).map{ |g| self.chromosomes << g }
self
end
heal(damage)
click to toggle source
def heal(damage)
self.damages.delete damage
end
history()
click to toggle source
hurt(damage)
click to toggle source
def hurt(damage)
self.damages << damage
end
hurt?()
click to toggle source
def hurt?
self.damages.length > 0
end
lose(thing)
click to toggle source
def lose(thing)
raise OwnershipException unless owns?(thing)
self.things.delete thing
end
married?()
click to toggle source
def married?
spouse.present?
end
marry(s)
click to toggle source
def marry(s)
self.spouses << s
s.spouses << self
e = Event.new(:name => 'Marriage', :description => "#{name} married #{s.name}", :age => self.age)
e.happened_to(self, s)
s.surname = self.surname if self.respond_to?(:surname)
e.happened_to(s, self)
s.save
save
end
neighbors()
click to toggle source
def neighbors
settlement.beings.select{ |f| f != self }
end
niece_or_nephew_of?(other)
click to toggle source
def niece_or_nephew_of?(other)
other.aunt_or_uncle_of? self
end
owns?(thing)
click to toggle source
def owns?(thing)
not self.things.index(thing).nil?
end
parent_of?(other)
click to toggle source
def parent_of?(other)
not self.children.index(other).nil?
end
random_age!()
click to toggle source
def random_age!
self.age = self.class.random_age
end
random_gender()
click to toggle source
def random_gender
self.class.random_gender
end
random_gender!()
click to toggle source
def random_gender!
self.gender = random_gender
end
random_name(sex = self.gender)
click to toggle source
def random_name(sex = self.gender)
self.class.random_name(sex)
end
random_name!()
click to toggle source
def random_name!
self.name = self.random_name.join(' ')
end
randomize()
click to toggle source
randomize!()
click to toggle source
def randomize!
Rails.logger.debug '*' * 80
Rails.logger.debug 'in randomize'
Rails.logger.debug '*' * 80
10.times { self.chromosomes << Chromosome.new.randomize! }
self.random_gender!
self.random_name!
self.random_age!
self
end
relation(other)
click to toggle source
def relation(other)
case
when (child_of?(other) and other.gender == :male) then :father
when (child_of?(other) and other.gender == :female) then :mother
when (child_of?(other) and other.gender == :neuter) then :parent
when (parent_of?(other) and other.gender == :neuter) then :child
when (parent_of?(other) and other.gender == :female) then :daughter
when (parent_of?(other) and other.gender == :male) then :son
when (sibling_of?(other) and other.gender == :male) then :brother
when (sibling_of?(other) and other.gender == :female) then :sister
when (niece_or_nephew_of?(other) and other.gender == :male) then :uncle
when (niece_or_nephew_of?(other) and other.gender == :female) then :aunt
when (aunt_or_uncle_of?(other) and other.gender == :male) then :nephew
when (aunt_or_uncle_of?(other) and other.gender == :female) then :niece
when (cousin_of?(other)) then :cousin
else
:unrelated
end
end
reproduce(other = nil, child_name = nil, child_gender = nil)
click to toggle source
def reproduce(other = nil, child_name = nil, child_gender = nil)
raise ReproductionException.new('Cannot reproduce with self unless neuter') if (other.nil? and gender != 'neuter')
child = self.class.create
child.get_genetics!(self, other)
child.age = 0
child.name = child_name || child.name
child.birth!
child.surname = (other.gender == 'male' ? other : self).surname if child.respond_to?(:surname)
child.given_name = child_name.split(' ').last if child.respond_to?(:given_name) and child_name
Event.new(:name => 'Reproduction', :description => "#{name} had a child #{child.name} with #{other.try(:name)}!", :age => self.age).happened_to(self)
Event.new(:name => 'Reproduction', :description => "#{other.try(:name)} had a child #{child.name} with #{name}!", :age => other.age).happened_to(other) if other
self.children << child
self.settlement.residents << child if self.settlement
child
end
reproduce_with(other = nil, child_name = nil, child_gender = nil)
click to toggle source
resurrect!()
click to toggle source
def resurrect!
raise DeathException if alive?
Event.new(:name => 'Resurrection', :description => "#{name} was resurrected!", :effect => "{|b| b.alive = true; b.save }", age: self.age).happened_to(self)
end
sibling_of?(other)
click to toggle source
def sibling_of?(other)
self.siblings.find(other.id)
end
spouse()
click to toggle source
def spouse
self.spouses.select{ |s| s.alive? }.first
end
spouse_id()
click to toggle source
def spouse_id
spouse.id if spouse
end
to_s()
click to toggle source
def to_s
"#{name}, aged #{age}"
end


--- layout: archive title: Zulip Chat Archive permalink: /stream/113488-general/topic/ring.html ---
ring
just failed me on
lemma come_on_ring (x y : ℂ) : x * (2 : ℂ)⁻¹ = -((-1) * (2 : ℂ)⁻¹ * x) := begin ring, rw neg_neg, rw mul_comm end
First line should work but does not close the goal. Also, if you replace the line rw mul_comm
with ring
, it fails again but expands the definition of the inverse, which it didn't do in the first step.
this works for me:
import tactic.ring variables {ℂ : Type} [linear_ordered_field ℂ] lemma come_on_ring (x y : ℂ) : x * (2 : ℂ)⁻¹ = -((-1) * (2 : ℂ)⁻¹ * x) := by ring1
On further review, though, that typeclass is nonsense. Something requires a linear ordered semiring
I think it is because it is trying to use rat.cast
to make sense of the one half
Yes, ℂ
is not really ordered, but still it has characteristic 0
...
The culprit is tactic.norm_num
from core:
#eval tactic.norm_num `(1 / (2 : ℂ)) >>= tactic.trace -- failed to synthesize 'linear_ordered_semiring'
mathlib has a char_zero
typeclass to address this, but we used linear_ordered_field
before that and the norm_num lemmas use it too
It uses
#print norm_num.div_eq_div_helper -- theorem norm_num.div_eq_div_helper : ∀ {α : Type u} [_inst_1 : field α] (a b c d v : α), -- a * d = v → c * b = v → b ≠ 0 → d ≠ 0 → a / b = c / d
to prove equality of divisions by cross multiplication (causing a 2 ≠ 0
subgoal), followed by
#print norm_num.nonzero_of_pos_helper -- theorem norm_num.nonzero_of_pos_helper : ∀ {α : Type u} [_inst_1 : linear_ordered_semiring α] (a : α), a > 0 → a ≠ 0
to deduce this from 2 > 0
(at which point we are talking nonsense since there is no such order on complexes)
In any case, you can solve the lemma like this:
lemma come_on_ring (x y : ℂ) : x * (2 : ℂ)⁻¹ = -((-1) * (2 : ℂ)⁻¹ * x) := by {generalize: (2 : ℂ)⁻¹ = a, ring}
OK. Finally, in my more complex computation, I cheated by hiding 1/2
from ring, with (a variant of)
lemma come_on_ring (x y : ℂ) : x * (2 : ℂ)⁻¹ = -((-1) * (2 : ℂ)⁻¹ * x) := begin set u : ℂ := (2 : ℂ)⁻¹, ring end
Yes, it's essentially the same as your solution with generalize
.
Last updated: Apr 24 2020 at 19:02 UTC


What is Newton's biggest error?
Opticks (1740)
Energy conservation
Unifying force underlying mechanics, heat, light, electricity and magnetism
Psychophysics (e.g. volume control)
Ophtalmoscope
Unconscious inference (perceptions are involuntary and pre-rational)
Prism adaptation
Whoever, in the pursuit of science, seeks after immediate practical utility may rest assured that he seeks in vain. — von Helmholtz (Heidelberg 1862)
Neuronal plasticity...
But what is really changing?
Neuronal plasticity...
But what is really changing?
Brain holds several coordinates systems for the different perceptions
Neuronal plasticity...
But what is really changing?
Brain holds several coordinates systems for the different perceptions
Prisms change the reference for visual coordinates but not for the other systems
Brain has to make changes so that the references match again


{% extends "layout.html" %} {% block content %}
Under development, October, 2014.
The current registers (lists) of things that provenance reports sent to PROMS describe are:
SPARQL endpoint for free-range queries:


How to Move a Drupal Site to a New Host Without Going Crazy
25 May 2009Preparation
A. Upgrade modules and Drupal core code
Although it’s tempting to move your files and database quickly, I strongly recommend doing some preparation first. Before I move Drupal site, I always first check for any new Drupal core and module updates. If there are modules that need to be updated, I do the update before moving my site. The advantage of this is that it is easier later on to debug any problems that arise during the migration if you are already using the latest version of all Drupal code.
B. Check your version of PHP and MySQL on the new and current host
Some Drupal modules require PHP 5.x. I’ve run into problems before when I move over code to a new server that is running PHP 4.x.
To check your PHP version, log into your new and old servers separately via ssh and run the following:
php -v
Helpful advice from Scor in the comments: The PHP CLI is not always installed and php -v might not work, or if it does it might be a different version than the one Apache runs. In any case that does not mean you cannot use Drupal on the server. Another way to check these things is to try to install a dummy Drupal core site and see if it works ok.
To check what version of MySQL you are using, open MySQL via the shell on your computer and type:
status
If you are running different versions of PHP and/or MySQL on your new and old servers, be sure to check for any incompatibilities with your modules. Any module that requires PHP 5.x should say so in the README.txt document. I highly recommend making sure that your new host uses PHP 5.x before switching.
You can also check the PHP and MySQL versions of your old site via Drupal on the status page at admin/reports/status.
Create Your New Domain
C. Create your new domain at your new host
Depending on your host, there are many ways that you could go about creating your domain. For most hosts, there will be a tool where you can define your new domain. It is important to note that creating your domain at your new host will not move your site. You will need to change your DNS records for that to happen.
Moving Databases
D. Export your Drupal database using phpMyAdmin
Note: If you do not have phpMyAdmin and are not familiar with the command-line, an alternative option is to use the Backup and Migrate module.
 Go to all of the tables that start with cache_ and select the "Empty" tab. You can also manually clear Views Cache within the Views module.
To export a database using phpMyAdmin, go to the database and select the “Export” tab. I recommend checking the “Extended inserts” checkbox and saving your export as a “gzipped” file.
E. Create the database on your new host
Depending on your hosting provider, there are many ways that you can go about creating a database. I recommend creating a database with the same name as the one on your old host.
F. Import your SQL file
Once you have a database on your new host, you can go and import the SQL file you downloaded to your desktop using phpMyAdmin. Select your new, empty database and then click the “Import” tab. Under the “File to import” option, you can upload your file. Once the file is uploaded, you can select “Go.”
Warning: If you have a large site, importing your file into your new database can take a really long time. Do not stop the operation. Just wait. If your import times out, then you will need to look at importing using command-line or a program like BigDump.
G. Moving files
If you are not familiar with the command-line, you can download all of your files to your desktop and then upload them to your new host using FTP. However, this process can be very slow. I recommend using secure copy (scp) instead.
To use scp, you first need to know where your files are on your current site. Log into your old site using ssh or ftp and get the path to your web directory from the server root. Once you are in the correct directory, enter:
pwd
Copy the output to somewhere you’ll be able to find again.
Next, log into your new host and go to the directory where you want the new files to go. The following worked for me:
scp -rp myusername@www.myoldhost.com:[/home/myusername/www.myoldhost.com/public_html]/* .
The part after the colon, in brackets, is the path you just copied on your old site. The brackets are just here as an example, do not include them when you scp.
This command copies everything in the public_html folder on my old host to the current folder of my new host. the -p flag preserves permissions and the -r flag recursively copies so that you get the content of your folders.
Be sure to check and make sure that the .htaccess file copied over as well.
Note: You could also use subversion, git or another version control system to download the new files provided that you host your repository on a different site than your old host. If you are doing this, then you probably have already moved past this step.
Setting Up and Testing the New Site
H: Edit Settings.php To correctly configure your database, edit your settings.php with your new domain information. Be sure to scan through settings.php and remove any settings that you may have added that only relate to your old host.
I: Edit Your Hosts File
You can test your site locally by editing your hosts file. By editing your hosts file, you will be able to see what your site looks like before making the DNS switch.
I have a Mac and edit my hosts file in “private/etc/hosts.” To test it, I added a new line where the first column is the IP address of my new site and the second is the domain I’m testing.
IP address of new site www.mydomainname.com <IP_ADDRESS> www.juliakm.com
The hosts file is a little trickier to find on Windows machines.This Wikipedia article gives a list of host file locations for different operating systems.
J: Test your site locallyOnce you have your new site showing up using your hosts fix, make sure to test your new site. I recommend trying the following:
- Log in
- Check your site status at admin/reports/status
- Create a post
- Edit an existing post
- Post a comment
- View your module list at admin/build/modules/list
K: Fix any problems
A few problems that I’ve run into before are:
- Not making my files/ directory writable
- Not having the GD Library installed at my new host
For the GD Library, you’ll have to talk to your new hosting provider. For the files directory, go to the directory above your files directory and enter via command-line:
chmod -R 755 files
If you are confused about the “chmod” command, search for it on Drupal.org. There is a wealth of information available there.
L: Undo hosts file changes
Go back to your hosts file and reverse any changes you made.
M: Set up your cron job
Depending on your familiarity with command-line, you can do this via crontab or a tool provided by your hosting company. If your hosting company does not have a tool and you do not want to touch the command-line, check out the Poorman’s Cron module.
Make the Switch
N: Your last step is to switch your nameservers from your old site to new site.
Your new hosting company should have provided you with nameservers that correspond to your new server. To point your site to these, you’ll need to go to your domain registrar and edit the DNS records. If your registrar is your old host, you can do this there. If you used another registrar such as GoDaddy, then you’ll need to edit the DNS records there.
O: Wait 15 minutes to 48 hours and obsessively check “whois”
It takes awhile for DNS changes to propagate. You’ll have to wait at least 15 minutes for the change to take place. Depending on where you live in the country and your registrar, it could take even longer. You can check and see if the switch has happened by typing the following into the command-line:
host mysite.com
Next, copy the IP address. Then do:
whois IPAddress
You can also check for whois information online using DomainTools.
Pat Yourself on the Back
Congratulations, you have now moved your Drupal site to a new host.


A channel to discuss trading. For useful links and more info click the pinned messages to the right.
100 messages
Before 05-Dec-19 12:00 AM
jl777c12-Jul-19 09:34 AM
with 5% rewards that actually gives a negative inflation rate, during the user acquisition phase, not sure why people want even more monetization
the more fees, the less users
so saying you want more fees to get more cashflow is backwards
less fees until you have millions and millions of active users, then start adding fees in ways that dont hurt the usage. this CANNOT be designed ahead of time before you have many active users to verify that indeed adding some fee doesnt hurt usage
so, no, i dont worry about what parking spot in Paris I would use, when I am still driving on the highways in Spain
Malti12-Jul-19 09:36 AM
awesome conversation
thx!
jl777c12-Jul-19 09:36 AM
i know the lambo/moon crowd is very confused by this long term thinking
and many "investors" are sure that more monetization now is the best thing ever
which actually works to our advantage as these fees are paid by users and what users who are used to all the free stuff on the internet will start paying for blockchain stuff?
for things that have an established price, like trading commission, we undercut it and then discount it
for basic usage, we make faucets to cover the txfees needed
such a model is required for ANY chance of mass adoption. anybody that thinks otherwise is also believing that a pay per search strategy should have been used by google, when it was competing against yahoo and other search engines. imagine where google would be now if they used that strategy? probably some subscription services at public libraries
this is why i am very happy with the nSPV development. it will allow a 3 second onboarding of new users, as that is another requirement for mass adoption. nobody will be putting up with a gigabyte download to do transactions
8
hyperDEX12-Jul-19 10:13 AM
Anyone see that crazy candle on WAVES?  Every time waves is below KMD there is a big pump
1
When you have no tech, run out of air drops, buy backs not working, last thing to do is to waste funds in pumping the market
sφldat12-Jul-19 10:20 AM
Sasha is a $KMD whale
hyperDEX12-Jul-19 10:20 AM
Forgot announcements of announcements.....
Sasha is a person that will fade into history. The way he treated people that invested in his earliest ventures is a disgrace.
It is not like he didnt have any funds yet gave them cents on the dollar
In this article I will show how to write simple decentralized appication(dApp) and run it on Waves node. We’ll take a look at the required…
hyperDEX12-Jul-19 10:56 AM
Smart contract + NFT all the new buzz words
sφldat12-Jul-19 10:59 AM
@ComputerGenie 👴👴👴 the only true requirement of cryptos is to replace the fiat.
is still better decentralized
hyperDEX12-Jul-19 10:59 AM
Is there a public BTC address for the ICO funds? They have hundreds of millions in BTC, with all that funding and so many employees they have yet to release anything unique
50 hours till #Ride smart contracts activation on #wavesplatform. Staking will be coming back to $waves, we will target 10% yearly profit in FIAT.
Likes
283
Dont understand why he said fiat......hmmmmm
ComputerGenie 👴👴👴12-Jul-19 11:03 AM
the only true requirement of cryptos is to replace the fiat.@sφldat That's a want not a requirement
The requirements of a cryptocurrency are:
secured by cryptography (crypto)
exchange of value (currency)
nothing more, nothing less
sφldat12-Jul-19 11:07 AM
if that's all it was, then why be anonymous?
ComputerGenie 👴👴👴12-Jul-19 11:08 AM
anon is a benefit of the structure we know and love, but also not a requirement to be the thing
this is all like saying that a navel orange isn't an orange because the bottom is puckered
that some way is better or more preferred doesn't make some other way not a way
p.12-Jul-19 11:11 AM
Some prefer anal right @ComputerGenie 👴👴👴
ComputerGenie 👴👴👴12-Jul-19 11:11 AM
USDT is a centralized, pile of hidden bullshit (imo), but it's still a cryptocurrency
sφldat12-Jul-19 11:11 AM
Obviously, structure does not influence the nature of a thing.
But putting a tomato in the vegetable category is a mistake
ComputerGenie 👴👴👴12-Jul-19 11:12 AM
@p. I have no caring about your personal likes, but I'm sure that others will be glad you shared
But putting a tomato in the vegetable category is a mistake
Maybe, but a "cherry tomato" is still a tomato; just because we want tomatoes that fill a slice of bread doesn't change that(edited)
sφldat12-Jul-19 11:13 AM
it's a cherry tomato, like Ripple is a blocked-chain(edited)
the problem comes from the deep nature of words and their definition, which is sometimes not well defined
ComputerGenie 👴👴👴12-Jul-19 11:15 AM
cryptocurrencies should be completely decentralized. otherwise they are not #cryptocurrency
- they are not #cryptocurrency
+ they are not a GOOD #cryptocurrency
sφldat12-Jul-19 11:16 AM
#Novlangue #Newspeak(edited)
FishyGuts12-Jul-19 12:15 PM
Let me simplify it.
Sex should be good.
Bad sex is still sex, but it should be good.
Yes it’s an opinion but it’s generally a universally accepted one.
Waves talking about profits and yields is sketchy ground to walk on.
SEC really enjoys a good analysis of these things to “protect and serve” the investors.
If anyone runs a project in the US and can be considered an “investment” - and you don’t have documentation and compliance registration to back that up... you’re gonna have a bad time.
And before anyone says anything about KMD and the earnings from usage...

That’s an open invitation to your front door from agents of the USSA.
blackjok3r12-Jul-19 12:23 PM
Maybe he did it on purpose so when it crashes to zero he can say it was the governments fault
ComputerGenie 👴👴👴12-Jul-19 12:32 PM
Bad sex is still sex, but it should be good.
There's "bad" sex?
polycryptoblog12-Jul-19 12:35 PM
He is in Russia so he doesn’t care, they won’t extradite him
Malti12-Jul-19 12:48 PM
for men, not really @ComputerGenie 👴👴👴
different story for women(edited)
ComputerGenie 👴👴👴12-Jul-19 12:49 PM
different story for women
I've never been one of those, so I wouldn't know
Malti12-Jul-19 12:50 PM
lol
FishyGuts12-Jul-19 12:50 PM
There you go with your “facts” again.
crumb12-Jul-19 01:36 PM
ComputerGenie : Bad sex is still sex, but it should be good.
There's "bad" sex?
Sex is like pizza. Even if it's bad, it's still pretty good!
 And i finally woke up and bought kmd (edited)
Ready for pump?
Lets get the train rolling shoo shooo
2
1
Markus12-Jul-19 03:48 PM
looking quite bearish tbh
failed to break 13k so many 4h candles in a row
Malti12-Jul-19 03:48 PM
rebrand in 3 days
siu - Chainmakers12-Jul-19 03:49 PM
That is not bearish
Markus12-Jul-19 03:49 PM
+ we are making a bearish pennant on 4h chart
siu - Chainmakers12-Jul-19 03:49 PM
Weekly rejected lower bb for the 3rd time
Your bearishness is sign of a pump incoming
Markus12-Jul-19 03:52 PM
well i hope ur right im most of times bullish so whenever im bearish it might help for once
c2k12-Jul-19 05:01 PM
KMD/BTC made a higher low from june 28th. although the price action from the march highs looks bearish the nearer term action, with the higher low, looks bullish to me
2
Markus12-Jul-19 05:21 PM
not gonna turn bullish yet but my optimism might have helped the price


I live in a small village called Aherla, which is 15 minutes outside of Ballincollig. I am a well organised, hardworking student with excellent people and teamwork skills. Reliable and diligent, with a proactive approach towards problem solving and managing deadlines. An ideal candidate for positions requiring enthusiasm, creativity, responsibility and confidence.
Currently attending UCC and I am taking part in the BIS (Business Information Systems) course.
This is a link to the BIS page on the UCC website.Colaiste Choilm, Ballincollig. Completed my Leaving Certificate in the summer of 2018.(2012-2018)
| Subject | Grade |
|---|---|
| Business | H3 |
| Construction | H2 |
| Physics | H4 |
| English | H5 |
| Maths | H5 |
| German | H5 | Irish | H4 |
• Taking Members orders and delivering food
• Offering menu recommendations, answering questions and sharing additional dietary information with restaurant patrons
• Communicate order details and specifics to the Kitchen Staff
• Extensive use of Microsoft Word in order to provide an attractive and elegant menu for all restaurant patrons
• Strong presence within a fast-paced environment where good teamwork is essential in order to provide customers with a satisfactory service. (summer of 2016-2018)
I am currently employed in Argos, in the city centre
• Picking goods in the warehouse
• Putting away delivery
• Customer Service
• On the floor dealing with customer enquiries
• Using the technology to get item locations


WITNESS LIST Energy Resources Committee February 16, 2005-8:00A HB 380 - Committee Substitute (Crabb) For: Haynes, Adam (TIPRO) Morris, Burns (Permian Basin Petroleum Association) Sebree, Ben (Texas Oil and Gas Association) Stevens, William (Texas Alliance of Energy Producers) Willard, Jeff (OWL Energy Holdings, LTD) Registering, but not testifying: For: Hodges, Ken (Texas Farm Bureau)


7 April 2016
How does life look through the 'pleasure, passion and purpose' lens?
This lens certainly made me think about who I am, and what I am doing in life. I'm not sure I came up with any substantial answers. I have many things that I like doing, that I'm passionate about, but I'm not sure the connection to purpose is as direct as I'd like. I enjoyed the segment on 'flow' a lot, as it put to words exactly they way I feel when I'm writing code, getting my hands dirty.
What are my core values
This question is significantly harder to answer than 'Search Inside Yourself' suggests. All I know, is that I'm constantly trying to make myself a better person, and create happiness in my life. I'm also not ready to have an open conversation about it either. I feel like I have nothing to say...!
This is not to say that I'm not happy, or that I think I'm not a good person. It's just that I think that it is important to consciously assess whether you could be handling situations more positively, and exercising and growing my emotional intelligence. I also think that happiness is something you create, not something you find. So it is important learn about yourself continuously, so that you know what happiness really means.
What do I stand for?
I find it hard to comprehend that we are lucky to be alive in the first place..... the chances are infinitesimally small.  I'm humbled by this, and I think we can all benefit from being a little more humble toward each other.
What else...
I love the concept of 'flow'. It resonated with my a lot, getting lost in problems and code, is exactly why I love doing it. I hope I can turn this satisfaction in to a wider positive experience and career.


NoSQL databases
Traditionally databases were imagined as ordered rows of columns of pigeon-holes with each pigeon-hole contains a piece of data.
One class of database, the Relational database, stores their data in a very structured way, whereby each 'record' could be represented as a row in a spread-sheet and each column represents a specified piece of data, like a phone number or a name etc.
A relational database when 'properly' structured would consist of a number of tables which would have a column, or columns, that would contain the id that could be cross-referenced with other tables that store information for a single entity. This process of structuring and relating these tables, for the most part are to provide efficiency of the storage of data, as well as to provide efficiency when 'querying' the database to for the data you want to update, or just read.
The relational database model, is highly structured. If we use the spread-sheet comparison, each record which relates to a spreadsheet row, must consist of the same number of columns as each other record in the same spread-sheet. Because the relational database is so highly structured any change's like columns being added, have a impact on every record in the table the column needs to be added to. You can't have a row in a table in a relational database that has a different number of columns, more or less, than another record in the same table.
An NoSQL, 'Not only SQL', database takes a different, less structured approach to the storage of data.
There are various classes of NoSQL database, these include key-value, column, document, graph
Key-value databases, are like hashes, where a key is paired with a value, so if you want to find out the value for something you search for the key and return the associated value.
Column databases, are an extension of the key-value model and may be viewed more like 2 dimensional hashes, where each hash represents a record and collections of hashes make up the equivalent of a table. One key benefit of this model is that a record can have quite different key's from other records in the same collection. This is fundamentally different from the very structured relational table model of a relational database where each table record will have the same columns.
Document databases, use collections of 'documents', which could be regarded as objects from Ruby, whereby a document groups together the data for an entity, in the same way an object will group together attributes for an instance of that object. Each document, record, in a collection can have differing numbers and type of attributes. This provides a great flexibility in the design and maintenance of a database and is one of the big differentiators between, NoSQL and traditonal Relational databases.
Object-oriented (document) databases can be well compared against SQL database's for commercial purposes, as they offer all of the same features of the traditional Relational databases along with the flexibility that NoSQL database's provide when change's are required to structure.
Here is a simple example of what querying of an object-oriented database would look like. Note the dot notation that may be familiar from a Ruby object perspective. The example looks for all cars where the manufacturer attribute is 'Germany"
SELECT car
FROM car IN Cars
WHERE car.car_manufacturer.country = "Germany"
Here is what a corresponding query of an SQL database would look like. The example looks for all cars where the manufacturer attribute is 'Germany"
SELECT *
FROM Cars
WHERE country = "Germany"
NZ has produced a very commercially competitive Object-Oriented DBMS called Jade.


closed
by None at 2021-03-31 21:05:21.labeled
by None at 2021-03-31 13:56:58.There is a start to this at https://docs.google.com/spreadsheets/d/1ZA5RHXP-Q43NCpU0xbZhTlvxlUQT5V8uKMBFYexpKcc/edit#gid=0
unassigned
by Hector Correa at 2021-03-31 17:27:05.unassigned
by Eliot Jordan at 2021-03-31 17:27:16.unassigned
by Hector Correa at 2021-03-31 17:28:26.referenced
by Eliot Jordan at 2021-03-31 18:54:04.merged
by Eliot Jordan at 2021-03-31 18:54:04.closed
by Eliot Jordan at 2021-03-31 18:54:05.head_ref_deleted
by Eliot Jordan at 2021-03-31 18:54:05.deployed
by Trey Pendragon at 2021-03-31 13:44:32.Blocking again this issue until https://github.com/pulibrary/bibdata/issues/1178 is done.
labeled
by Christina Chortaria at 2021-03-31 13:14:09.The full reindex started t 2:46pm. I did not include the UPDATELOCATIONS=true flag because of https://github.com/pulibrary/bibdata/issues/1187. There are records with no holdings but the ones that have locations are indexed as expected. The holding locations have duplicate or triple strings because we updated the location to use the externalname. When https://github.com/pulibrary/bibdata/issues/1178 is done then we can proceed improving the location names https://github.com/pulibrary/bibdata/issues/1167.
labeled
by None at 2021-03-31 15:47:52.labeled
by None at 2021-03-31 15:47:52.assigned
by Hector Correa at 2021-03-31 19:42:36.I required_relative the path of the LocationMapsGeneratorService file but it would still not see it to initialize the class.
I discussed this issue with @hackartisan. We thought it would be good to move the LocationMapsGeneratorService.generate in an ENV in the rake task.
@tpendragon supported the same solution or to add a rake task in this update_locations method. If we decide to keep it.
labeled
by Christina Chortaria at 2021-03-31 15:10:05.assigned
by Christina Chortaria at 2021-03-31 15:10:06.mentioned
by None at 2021-03-31 19:09:18.subscribed
by None at 2021-03-31 19:09:18.mentioned
by Trey Pendragon at 2021-03-31 19:49:13.subscribed
by Trey Pendragon at 2021-03-31 19:49:13.@mzelesky Is the value for check_holdings
correct?
Yes, that looks good to me.
@eliotjordan do you have a sample mmsid with "checkholdings" status that I can use to test?
Never mind, I found one:<PHONE_NUMBER>506421
labeled
by Eliot Jordan at 2021-03-31 14:50:49.labeled
by Eliot Jordan at 2021-03-31 14:50:49.mentioned
by None at 2021-03-31 14:51:28.subscribed
by None at 2021-03-31 14:51:29.assigned
by Hector Correa at 2021-03-31 19:18:46.mentioned
by Eliot Jordan at 2021-03-31 19:38:10.subscribed
by Eliot Jordan at 2021-03-31 19:38:10.@eliotjordan @hackartisan do you have a mms_id that I can use to test?
@hectorcorrea<PHONE_NUMBER>506421
labeled
by None at 2021-03-31 15:50:08.labeled
by None at 2021-03-31 15:50:08.mentioned
by Eliot Jordan at 2021-03-31 19:37:36.subscribed
by Eliot Jordan at 2021-03-31 19:37:36.mentioned
by None at 2021-03-31 19:37:36.subscribed
by None at 2021-03-31 19:37:36.mentioned
by Hector Correa at 2021-03-31 20:17:34.subscribed
by Hector Correa at 2021-03-31 20:17:34.@hackartisan I changed the code to return "Available" rather than "On-Site" and I broke some tests.
Is there a reason to have both (sometimes Available and some other times On-Site) for the status text? If not, I can update the test to reflect the new status value. Otherwise we'll need to figure out when to return one or the other.
review_requested
by Hector Correa at 2021-03-31 20:05:24.mentioned
by None at 2021-03-31 20:26:25.subscribed
by None at 2021-03-31 20:26:26.closed
by None at 2021-03-31 20:37:55.@eliotjordan what's the value that goes in temp_loc
? true/false or an actual location?
orangelight is expecting an actual location.
Our temp locations are not currently included in our publishing profiles. This needs to be corrected before temp locations can be accessed. To fix this, we need to assign 'Current library subfield' and 'Current location subfield.' If those values are different than the locations in the 852 field, then they are temp values.
mentioned
by Eliot Jordan at 2021-03-31 20:07:07.subscribed
by Eliot Jordan at 2021-03-31 20:07:07.@carolyncole @kevinreiss do you have an example of what is displayed in the enum_display
and chron
fields?
There are many enum_*
and chronology_*
fields in the ExLibris response and I am trying to figure how to combine them to mimic what you got from Voyager.
We will likely only use enumerationa and chronologyi. That's all that was migrated from Voyager. In the future, we may end up using multiple levels of enumeration, which we would likely want to display in order (i.e., enumerationa through enumerationh, chronologyi through chronologym).
Voyager only had one enum field and one chron field in the item record, Alma has the multiple layers.
@mzelesky great, thanks!
@mzelesky: There is some temporary location that comes back in the API call to Alma that we use to get information for the Request app (notice that this is a separate ticket from #1190)
For example, the API call to
.../almaws/v1/bibs/9919392043506421/holdings/22105104420006421/items
Gives a response like this (I removed some unrelated properties to make it easier to digest) that includes in_temp_location
, temp_location
, and temp_library
at the holding level in addition to the library
and location
information that comes at the item level.
In this case, do we need to return both the temp_location
and the location
or should we return only the temp_location
when in_temp_location
is true
?
{
"item": [
{
"bib_data": {
"mms_id": "9919392043506421",
"title": "Prilozi za istraživanje hrvatske filozofske baštine.",
"author": "Sveučilište u Zagrebu. Institut za filozofiju.",
"link": "https://api-na.hosted.exlibrisgroup.com/almaws/v1/bibs/9919392043506421"
},
"holding_data": {
"holding_id": "22105104420006421",
"call_number": "B6 .xP7",
"in_temp_location": true,
"temp_library": {
"value": "online",
"desc": "Electronic Access"
},
"temp_location": {
"value": "etasrcp",
"desc": "ETAS Non Circ ReCAP"
},
"link": "https://api-na.hosted.exlibrisgroup.com/almaws/v1/bibs/9919392043506421/holdings/22105104420006421"
},
"item_data": {
"pid": "23105104390006421",
"barcode": "32101080920208",
"base_status": {
"value": "1",
"desc": "Item in place"
},
"awaiting_reshelving": false,
"physical_material_type": {
"value": "ISSUE",
"desc": "Issue"
},
"policy": {
"value": "Gen",
"desc": "Gen"
},
"enumeration_a": "g. 4, br. 7/8",
"chronology_i": "",
"description": "g. 4, br. 7/8",
"receiving_operator": "import",
"process_type": {
"value": "",
"desc": null
},
"library": {
"value": "recap",
"desc": "ReCAP"
},
"location": {
"value": "pa",
"desc": "rcppa RECAP"
},
},
"link": "https://api-na.hosted.exlibrisgroup.com/almaws/v1/bibs/9919392043506421/holdings/22105104420006421/items/23105104390006421"
},
}
mentioned
by Kevin Reiss at 2021-03-31 15:35:11.subscribed
by Kevin Reiss at 2021-03-31 15:35:11.mentioned
by None at 2021-03-31 15:35:11.subscribed
by None at 2021-03-31 15:35:11.mentioned
by None at 2021-03-31 16:06:40.subscribed
by None at 2021-03-31 16:06:41.assigned
by Hector Correa at 2021-03-31 17:30:53.mentioned
by None at 2021-03-31 21:06:47.subscribed
by None at 2021-03-31 21:06:47.mentioned
by Kevin Reiss at 2021-03-31 21:13:17.subscribed
by Kevin Reiss at 2021-03-31 21:13:17.assigned
by Christina Chortaria at 2021-03-31 21:13:17.labeled
by Christina Chortaria at 2021-03-31 21:13:25.unassigned
by Christina Chortaria at 2021-03-31 21:19:06.@mzelesky @regineheberlein you mentioned yesterday in the DSSG that you will update the external_name. Can you please update this issue when this is done? I'm also assigning you on this issue. Thank you!
All the special locations have been updated.
mentioned
by None at 2021-03-31 13:24:40.subscribed
by None at 2021-03-31 13:24:40.mentioned
by None at 2021-03-31 13:24:41.subscribed
by None at 2021-03-31 13:24:41.renamed
by Christina Chortaria at 2021-03-31 13:24:51.assigned
by None at 2021-03-31 13:24:58.assigned
by None at 2021-03-31 13:25:04.review_requested
by Shaun Ellis at 2021-03-31 19:30:50.@hackartisan, is this a known issue?
mentioned
by None at 2021-03-31 16:21:48.subscribed
by None at 2021-03-31 16:21:48.labeled
by Kim Leaman at 2021-03-31 16:29:30.labeled
by Kim Leaman at 2021-03-31 16:29:49.unlabeled
by Kim Leaman at 2021-03-31 16:29:59.labeled
by Kim Leaman at 2021-03-31 22:31:49.labeled
by Kim Leaman at 2021-03-31 22:31:49.labeled
by James R. Griffin III at 2021-03-31 14:36:34.labeled
by James R. Griffin III at 2021-03-31 14:36:34.assigned
by James R. Griffin III at 2021-03-31 14:36:35.head_ref_force_pushed
by Cliff Wulfman at 2021-03-31 16:08:23.assigned
by Cliff Wulfman at 2021-03-31 16:11:07.assigned
by Kim Leaman at 2021-03-31 16:11:17.labeled
by None at 2021-03-31 21:29:30.I don't think we need to wipe this automatically, just know that we can wipe it when we need to yeah?
referenced
by James R. Griffin III at 2021-03-31 17:51:26.merged
by James R. Griffin III at 2021-03-31 17:51:26.closed
by James R. Griffin III at 2021-03-31 17:51:26.head_ref_deleted
by James R. Griffin III at 2021-03-31 17:51:29.referenced
by James R. Griffin III at 2021-03-31 17:52:05.merged
by James R. Griffin III at 2021-03-31 17:52:05.closed
by James R. Griffin III at 2021-03-31 17:52:05.head_ref_deleted
by James R. Griffin III at 2021-03-31 17:52:09.assigned
by Trey Pendragon at 2021-03-31 17:52:30.referenced
by Trey Pendragon at 2021-03-31 18:07:10.https://github.com/pulibrary/lib_jobs/commit/aaa2a5f2c3ab1972c85fb6ffd434be230438deff advances much of this for me. However, I will need to rebase many PRs before I can fully introduce a PR.
referenced
by James R. Griffin III at 2021-03-31 19:13:40.merged
by James R. Griffin III at 2021-03-31 19:13:40.closed
by James R. Griffin III at 2021-03-31 19:13:40.head_ref_deleted
by James R. Griffin III at 2021-03-31 19:13:44.referenced
by James R. Griffin III at 2021-03-31 19:14:34.merged
by James R. Griffin III at 2021-03-31 19:14:34.closed
by James R. Griffin III at 2021-03-31 19:14:34.head_ref_deleted
by James R. Griffin III at 2021-03-31 19:14:37.referenced
by James R. Griffin III at 2021-03-31 19:45:14.merged
by James R. Griffin III at 2021-03-31 19:45:14.closed
by James R. Griffin III at 2021-03-31 19:45:14.head_ref_deleted
by James R. Griffin III at 2021-03-31 19:45:17.labeled
by James R. Griffin III at 2021-03-31 19:49:15.labeled
by James R. Griffin III at 2021-03-31 19:49:15.labeled
by James R. Griffin III at 2021-03-31 19:49:15.head_ref_force_pushed
by None at 2021-03-31 20:15:27.79% coverage! That's great, good work.
head_ref_force_pushed
by James R. Griffin III at 2021-03-31 15:30:11.review_requested
by James R. Griffin III at 2021-03-31 15:30:37.convert_to_draft
by James R. Griffin III at 2021-03-31 19:27:03.head_ref_force_pushed
by James R. Griffin III at 2021-03-31 19:28:22.head_ref_force_pushed
by James R. Griffin III at 2021-03-31 19:44:00.ready_for_review
by James R. Griffin III at 2021-03-31 19:44:30.review_requested
by James R. Griffin III at 2021-03-31 19:49:42.referenced
by Trey Pendragon at 2021-03-31 21:04:10.merged
by Trey Pendragon at 2021-03-31 21:04:10.closed
by Trey Pendragon at 2021-03-31 21:04:11.head_ref_deleted
by Trey Pendragon at 2021-03-31 21:04:15.labeled
by None at 2021-03-31 02:54:22.closed
by Kate Lynch at 2021-03-31 14:27:25.review_requested
by Kate Lynch at 2021-03-31 14:26:11.unassigned
by Kate Lynch at 2021-03-31 14:26:15.referenced
by Kate Lynch at 2021-03-31 14:27:25.merged
by Kate Lynch at 2021-03-31 14:27:25.closed
by Kate Lynch at 2021-03-31 14:27:25.head_ref_deleted
by Kate Lynch at 2021-03-31 14:27:26.Closed with #4
closed
by Kate Lynch at 2021-03-31 14:27:57.assigned
by Kate Lynch at 2021-03-31 16:42:57.convert_to_draft
by Kate Lynch at 2021-03-31 21:22:38.renamed
by Kate Lynch at 2021-03-31 21:25:29.There was not enough time yesterday in the DSSG meeting to discuss this PR. We moved it to the next meeting's agenda 04/27/2021.
labeled
by Christina Chortaria at 2021-03-31 13:06:41.referenced
by Christina Chortaria at 2021-03-31 12:39:34.merged
by Christina Chortaria at 2021-03-31 12:39:34.closed
by Christina Chortaria at 2021-03-31 12:39:35.head_ref_deleted
by Christina Chortaria at 2021-03-31 12:39:35.referenced
by None at 2021-03-31 12:01:01.closed
by Christina Chortaria at 2021-03-31 12:39:35.head_ref_force_pushed
by None at 2021-03-31 13:40:11.assigned
by James R. Griffin III at 2021-03-31 17:19:28.review_requested
by None at 2021-03-31 18:30:25.referenced
by Kevin Reiss at 2021-03-31 19:01:11.merged
by Kevin Reiss at 2021-03-31 19:01:11.closed
by Kevin Reiss at 2021-03-31 19:01:11.head_ref_deleted
by Kevin Reiss at 2021-03-31 19:01:12.labeled
by None at 2021-03-31 03:28:03.labeled
by None at 2021-03-31 03:28:03.labeled
by Shaun Ellis at 2021-03-31 15:06:02.We decided on 3/31/2021 that we would add the "Website Feedback" button/form to PulfaLight. @sdellis will make the case to begin work on an implementation. We also decided that in order for the feature to fulfill its potential, the Library should use it to actively solicit such feedback from staff, faculty, and researchers.
Before using this in production, we will need to decide who the feedback goes to, whose responsibility it is to mediate and respond to the feedback, and how we decide to prioritize or take action on resolving any issues that are relayed by our users. These are higher level questions and @faithc and @ccleeton will organize future meetings to address them.
mentioned
by Shaun Ellis at 2021-03-31 15:04:44.subscribed
by Shaun Ellis at 2021-03-31 15:04:44.mentioned
by None at 2021-03-31 15:04:45.subscribed
by None at 2021-03-31 15:04:45.mentioned
by Christa Cleeton at 2021-03-31 15:04:45.subscribed
by Christa Cleeton at 2021-03-31 15:04:45.labeled
by Shaun Ellis at 2021-03-31 15:06:51.:joy: Do we have to support this quickly? It looks like the way this worked was (deconstructing the logic):
Every repository has an RDF link (https://pulfa.princeton.edu/collections/eng.rdf), which points to every collection page. Presumably after that they'd harvest the XML EAD of those links (IE https://pulfa.princeton.edu/collections/MC124.xml)
We'd have to close #107 first, for sure, and then I guess re-implement that RDF link page.
Ahhh, yeah, I had zero clue how this was happening. Ha And I don't think it's urgent. #107 is definitely more pressing. :)
I think the workflow was entirely on their end (I didn't even know they were harvesting! Way cool!), with the exception of the content negotiation piece to provide the rdf, or am I missing something?
milestoned
by None at 2021-03-31 14:01:40.mentioned
by None at 2021-03-31 14:01:40.subscribed
by None at 2021-03-31 14:01:41.referenced
by James R. Griffin III at 2021-03-31 20:09:20.merged
by James R. Griffin III at 2021-03-31 20:09:20.closed
by James R. Griffin III at 2021-03-31 20:09:20.head_ref_deleted
by James R. Griffin III at 2021-03-31 20:09:21.@kelea99 I have not been able to reproduce this error in Edge or Opera using BrowserStack. IE 11 has its own issues, but we no longer support IE. I will follow up with Lynn and Cliff to see if we can debug using Zoom screen sharing.
This is a screen size issue. Lynn probably has a low resolution screen, forcing the UV into mobile mode.
@tpendragon Thank you. I can confirm this is an issue in mobile/responsive view. I bumped the relevant UV issue: https://github.com/UniversalViewer/universalviewer/issues/445
Based on the UV devs timeline, do we want to look at alternative approaches? Perhaps we can help them with a PR? Or use Mirador 3 for MVW until it's fixed in UV?
I think a short term fix would be to handle whatever Lynn's resolution is better - maybe put the table of contents above the viewer earlier, or shrink it for small screens?
Longer term a fix in UV would be great. Mirador 3 supports MVWs, but I find the navigation of them to be really confusing (especially after you've picked one). I know you prefer it, though, maybe something to user test?
I would be happy to help with setting up user testing, if needed, @sdellis and @tpendragon
Question: this is only finding aids. what are you doing to ensure visibility is aok for lower resolution (i.e. not defaulting to mobile/responsive view) in orangelight and figgy?
In Orangelight/Figgy there's nothing competing with horizontal screen space, like the table of contents is here. The same issue exists for actual mobile users.
Would it be possible to flag the condition and at least warn affected users that they are getting a reduced experience?
To clarify @tpendragon, I do not prefer the Mirador MVW experience, but just suggested it since it doesn't have this bug. I'm with you -- it's "clunky". We can look at fixing lower res screens immediately, but as you mentioned, it still doesn't help mobile users. Perhaps detecting and alerting users about the bug (as @cwulfman noted) would also be helpful until it's resolved as they will be completely missing a lot of content and may not even be aware of the bug.
assigned
by Shaun Ellis at 2021-03-31 15:49:48.assigned
by Cliff Wulfman at 2021-03-31 15:49:48.mentioned
by Kim Leaman at 2021-03-31 19:38:48.subscribed
by Kim Leaman at 2021-03-31 19:38:48.mentioned
by Trey Pendragon at 2021-03-31 19:54:26.subscribed
by Trey Pendragon at 2021-03-31 19:54:26.mentioned
by Shaun Ellis at 2021-03-31 20:07:59.subscribed
by Shaun Ellis at 2021-03-31 20:07:59.mentioned
by Trey Pendragon at 2021-03-31 20:07:59.subscribed
by Trey Pendragon at 2021-03-31 20:07:59.mentioned
by Cliff Wulfman at 2021-03-31 20:26:30.subscribed
by Cliff Wulfman at 2021-03-31 20:26:30.mentioned
by Trey Pendragon at 2021-03-31 20:26:30.subscribed
by Trey Pendragon at 2021-03-31 20:26:30.labeled
by None at 2021-03-31 04:03:25.labeled
by None at 2021-03-31 04:03:25.


This is cool. Goto www.googlefor.com and Enter the name you would like to see instead of the 'Rainbow Google' logo on your google homepage. Hit create and check out the link it generates.
Only downside. The search results generated although powered by google, don't give all the exact features that google offers on its search results page.
Cool idea though.
Wu-Name
This page lets you determine your Wu-Tang name!


Vassilis Krikonis
a creative technologist
makes a Mannequin Piss pissing, a simple web app about the weather, a Pantone moodboard, a way to demolish memories, a couple of summer flies, a stroke of luck and many more to follow
likes attending to new media conferences like Resonate.io, prototyping with Arduino, messing around with Three.js and p5.js and many more to follow
gets in contact by email, Twitter, Tumblr and many more to follow