Complete the steps below. The output of this tool is a text file that contains numeric data representing the combined content of the image files that you selected.
The number of images in the data set:
The number of training images in the data set:
The resulting image size in pixels:
The number of classes:
number_of_images_in_the_class:
Enter the starting number (example: if the first file is "image3.png", enter 3):
Enter the file name (example: enter "img" if your files are named like img1.png, img2.png...):
Enter the file extension (examples: png, jpg, jpeg):
Select the folder containing the images that will be used in training:
Click below to load the images in the folder that you selected. Once loaded, the images will be shown at the bottom part of this page. Make sure that you scroll down to verify if the correct images were selected.
Provide a name for the file that will contain the combined images:
When you are done with adding the folders, click below to combine the images into a single file. The file will be downloaded automatically and it will be stored in download folder on your computer.
Click reset button below, if you want to start over. This will clear all the selections you made.
After completing the steps above, you can train an ML model using the file generated here. Click below to go to the model training tool. Train ML Model!
Enter the class names seperated with commas (example: classname1,classname2,classname3...):
Select a File to Load:
Enter avalue for epochs:
Last image in the data set will be displayed below:
-------------------
Selected images will be displayed below:
Copyright (2021) Erol Ozan
This tool is an open source software licensed under Apache License 2.0.
The code is built on TensorFlow JS platform and modified the code provided by TensorFlow JS.


Runinga - Just a better place to get movies recommendation for kids online for free.
It allows you to be informed on the best movies suitable for your children. No registration is required. The content is updated
daily with new release of movies. Just open Runinga and get your favorite movies reviewed by other viewers.
We have almost any movie
you want for your kids. They are grouped in to Kids, Pre-teens and Teens.
Please help us by sharing this site with your friends. Thanks!


{{teamDetail.team.data.name}}
| Team State | PrivatePublic | |
|---|---|---|
| Team ID | {{teamDetail.team.$id}} | |
| Name | {{teamDetail.team.data.name}} | |
| Event | {{teamDetail.team.getEvent().data.name}} | |
| Team Size | {{teamDetail.team.getEvent().data.teamMin}} - {{teamDetail.team.getEvent().data.teamMax}} | {{teamDetail.team.getEvent().data.teamMin}} |
| Direct Join | ||
| Created Date | {{teamDetail.team.data.createdAt | date: 'medium'}} | |
| Created By | {{teamDetail.team.getCreatedByUser().data.name}} |


POLLS WILL BE OPEN FROM FRIDAY, MARCH 19, 2021, AT 8 A.M., UNTIL THEY CLOSE AT 5 P.M. ON FRIDAY, MARCH 19.
Be sure to take a photo below with your face fully visible. Please remove all hats, sunglasses, masks or additional jewlery that may prohibit full visiblility of your face. Be sure to center your face as much as possible to the center of the camera.
You will not be able to complete the form below until you have taken your photo. If you do not like the photo you have taken, select TAKE SNAPSHOT once again until you are OK with the preview.
Once the form is enabled, please enter your full first name and last name and SSN for additional security measures. We want to verify you are you!
Once verified, to vote for a candidate of your choice, touch that person’s name.
Please follow the instructions below! If you need any help while voting, please contact your county elections office at 1-800-523-3242.
Let's get your photo for verification purposes!
First, please take a photo for verification purposes. Your captured image will appear below...
You must take photo above before filling out information below.


#include <GrSoftwareSampler.h>
Public Member Functions | |
| GrSoftwareSampler () | |
| class GrSoftwareSampler | |
| ~GrSoftwareSampler () | |
| void | SetTexture (GrImage *image) |
| public methods | |
| void | SetColor (unsigned int bgraColor) |
| bool | HasTexture () const |
| unsigned int | Sample (const SVec2 &uv) |
| samples the image as BGRA | |
| unsigned int | Sample (const SVec3 &uv) |
| unsigned int | Sample (const SVec4 &uv) |
| unsigned int | Sample (float u, float v) |
| SVec2 | SampleBump (const SVec4 &uv, const SVec4 &gradDX, const SVec4 &gradDY, float bumpScale) |
| SVec2 | SampleBump (const SVec3 &uv, const SVec3 &gradDX, const SVec3 &gradDY, float bumpScale) |
| SVec2 | SampleBump (const SVec2 &uv, const SVec2 &gradDX, const SVec2 &gradDY, float bumpScale) |
Definition at line 24 of file GrSoftwareSampler.h.
| GrSoftwareSampler::GrSoftwareSampler | ( | ) |
class GrSoftwareSampler
ctor & dtor
allocate memory for the cache.
initialize the current cache line's info.
Definition at line 30 of file GrSoftwareSampler.cpp.
| GrSoftwareSampler::~GrSoftwareSampler | ( | ) |
Definition at line 58 of file GrSoftwareSampler.cpp.
| bool GrSoftwareSampler::HasTexture | ( | ) | const [inline] |
Definition at line 36 of file GrSoftwareSampler.h.
| unsigned int GrSoftwareSampler::Sample | ( | float | u, | |
| float | v | |||
| ) |
denormalize the incoming UVs.
fetch the pixel and return.
Definition at line 142 of file GrSoftwareSampler.cpp.
| unsigned int GrSoftwareSampler::Sample | ( | const SVec4 & | uv | ) |
Definition at line 135 of file GrSoftwareSampler.cpp.
| unsigned int GrSoftwareSampler::Sample | ( | const SVec3 & | uv | ) |
Definition at line 128 of file GrSoftwareSampler.cpp.
| unsigned int GrSoftwareSampler::Sample | ( | const SVec2 & | uv | ) |
| SVec2 GrSoftwareSampler::SampleBump | ( | const SVec2 & | uv, | |
| const SVec2 & | gradDX, | |||
| const SVec2 & | gradDY, | |||
| float | bumpScale | |||
| ) |
calculate the sample coordinates.
get the gradient.
normalize the gradient if it's nonzero.
calculate fetch offsets.
calculate fetch offsets.
scale the fetch offsets so that they address the neighboring texel.
calculate offset texture coordinates.
calculate physical texture coordinates.
get texel values.
now calculate the bump value to return.
calculate the final bump value.
return the final color value.
Definition at line 168 of file GrSoftwareSampler.cpp.
| SVec2 GrSoftwareSampler::SampleBump | ( | const SVec3 & | uv, | |
| const SVec3 & | gradDX, | |||
| const SVec3 & | gradDY, | |||
| float | bumpScale | |||
| ) |
Definition at line 161 of file GrSoftwareSampler.cpp.
| SVec2 GrSoftwareSampler::SampleBump | ( | const SVec4 & | uv, | |
| const SVec4 & | gradDX, | |||
| const SVec4 & | gradDY, | |||
| float | bumpScale | |||
| ) |
perform texture sampling with filtering. This function only samples the blue channel.
Definition at line 154 of file GrSoftwareSampler.cpp.
| void GrSoftwareSampler::SetColor | ( | unsigned int | bgraColor | ) |
Definition at line 112 of file GrSoftwareSampler.cpp.
| void GrSoftwareSampler::SetTexture | ( | GrImage * | image | ) |
public methods
sets the texture to the sampler. At some point, we probably want to use a different layout than the standard scanline based image layout (eg, swizzled).
verify that the incoming image is valid.
calculate what's need to quickly convert normalized texture coordinates to denormalized coordinates.
fill the caches.
Definition at line 71 of file GrSoftwareSampler.cpp.


This package may be seen as an extension to the SgfController, which makes use of these components:
GameConfig |
Communicates the current game configuration. data class GameConfig : SgfData |
Markup |
Markup of nodes on the board. data class Markup : SgfData |
MarkupType |
The possible values for board Markup. enum class MarkupType |
MoveInfo |
Information about the last move played. data class MoveInfo : SgfData |
NodeInfo |
A piece of information relating to the current node to be displayed in the text window. data class NodeInfo : SgfData |
Piece |
A gaming piece. data class Piece : SgfData |
SgfCustomPropertyHandler |
typealias SgfCustomPropertyHandler = (state: SgfState, propIdent: String, propValue: String) -> Unit |
SgfData |
Base class for all instructions understandable by SgfView. sealed class SgfData |
SgfMoveHandler |
typealias SgfMoveHandler = (state: SgfState, colorValue: Value, move: Move) -> MoveInfo? |
SgfNodeHandler |
This class processes SgfNodes given the current SgfState and modifies that state to include the processed data. class SgfNodeHandler |
SgfState |
This class holds state relevant to the SgfView. class SgfState |
VariationData |
Information about currently possible variations (successors or siblings depending on SgfController configuration). data class VariationData : SgfData |
GoMoveHandler |
The move handler used by SgfNodeHandler to handle Go moves. val GoMoveHandler: SgfMoveHandler |


Please click the button below to begin the quiz.
Is JavaScript case-sensitive?
Within which HTML tag do we put JavaScript?
What is the correct syntax for referring to an external script called "script.js"?
How do you write an if statement for executing some code if "i" is NOT equal to 10?
What is the correct way to create a function in JavaScript?
Which of these is the assignment operator?
What is the proper way to add a comment in JavaScript?
How do you declare a JavaScript variable?


"Once you stop learning, you start dying." Though Albert Einstein was born over a century ago in Germany, his mantra has been paramount to my growth and success as a professional. As a first generation college graduate and native of the District of Columbia, the city with the nations largest achievement gap between poor children and their wealthy counterparts, it is only through mastering the alchemy of education that I was able to become more than just a product of my environment. It also allowed me to attend one of the best schools in the world, Pennsylvania State University.
Like my work?
Feel free to contact me at<EMAIL_ADDRESS>contracts and full-time work are viable options!


basic
debug
hierarchy
nested
expr
thattrs
issue245
stsm
with dialect
multi-data dialect
say hello
say hello (split)
say hello (split html5)
session
extrathyme


tock
/
ai.tock.shared
/
Level
/
BODY
BODY
BODY
(source)
Logs request and response lines and their respective headers and bodies (if present).
Example:


{{ _("Keep the public informed every step of the way") }}
{{ _("Try GC Notify, a better way to send service updates to your clients.") }}
{{ _("Built for the Government of Canada") }}
{% if session["userlang"] == "en" %} {% else %} {% endif %}{{ _("Built for the Government of Canada") }}
- {{ _("Send consistent and accessible email messages from a trusted domain.") }}
- {{ _("Personalise your messages, while protecting personal information.") }}
- {{_("Reduce the time, effort, and cost of correspondence.")}}
{{ _("What you can do with GC Notify") }}
{{ _("Connect your program or service") }}
{% if session["userlang"] == "en" %} {% else %} {% endif %}{{ _("Two ways to send:") }}
- {{ _("Automatically, using the API integrated with your web application or back-office system.") }}
- {{ _("Manually, by uploading a list of contacts as an Excel spreadsheet in GC Notify.") }}
{{ _("Work more efficiently") }}
- {{ _("Automate sending so that whenever there is a status change, the public receives an update.") }}
- {{ _("Improve your development tools with a secure, cloud-based messaging platform.") }}
- {{_("Set permission access for which people on your team can edit or send messages.")}}
{{ _("Skip the procurement process") }}
{{ _("Skip the procurement process") }}
{{ _("GC Notify is managed by the Canadian Digital Service with no costs for departments that use the service.") }}
- {{ _("Replace paper letters or costly third-party messaging services.") }}
- {{ _("Send up to 10 million emails per year and up to {} text messages per year, completely free.").format(default_free_sms_fragment_limits_central | format_number) }}
{{ _("Start sending test messages right away!") }}
{{ _("Want to know more? Get in touch").format(url_for('.contact'), 'link:text-white visited:text-white') }}


Candelabra lets you build from simple one-machine topologies to complex layouts with multiple servers. Candelabra can be used for defining simple development topologies (for example, for testing your software in your own machine) and then deploy it to production environments with just one command
Caldelabra's topologies can be used both for your local VirtualBox deployments as for real deployments in the cloud.
Candelabra can be easily extended with plugins in Python. Or you can distribute Candelabra topologies with your own simple hooks that are automatically invoked at some point...


FIRST LOOK: Next week’s Coronation Street in 10 pictures
The walls are closing in on Kel
by Claire CrickNext week's Coronation Street sees Kel finally arrested for his crimes, while Fiz and Tyrone think Hope is up to her old tricks again, and Christmas comes early for Steve...
Kel is arrested for child abuse
The police arrive and arrest Kel on suspicion of burglary, but Bernie later admits to her family that she also reported him for sexual abuse.
Kel is fuming when he finds out Bernie was behind his arrest and tells her she will regret crossing him.
Paul is also angry that now he will have to dig up his past once again and give the police a statement.
But that's soon the least of his worries when Kel takes Bernie hostage at No.5.
Gemma and Paul rescue their mum before anything sinister can happen.
After the drama, Paul realises that Kel needs to be behind bars and bravely decides he is ready to make his statement to the police.
Paul speaks out
Billy makes Paul an appointment with a counsellor and he opens up about his dark past.
With the hardest part over, Paul feels like a weight has been lifted and he decides now is the time to talk to the police.
Hope's up to her old tricks?
Tyrone and Fiz are horrified to find someone has lit a fire in their garden.
They immediately think Hope's responsible.
Jack tells them the fire had already been started when he and Hope arrived home.
But something doesn't add up...
Later Fiz finds a lighter in Hope's doll, and it seems her worst fears are confirmed.
Fiz is furious with her daughter and lashes out, smashing her iPad.
Roy and Richard grow closer
Richard and Nina visit Roy at the cafe and Roy promises to help his brother as much as he can.
Later, Roy goes to see Richard at home, but is shocked to see him looking so frail.
Nina blames Roy and the visit to the cafe for wearing her dad out.
Roy offers to help Nina at the flat, but she refuses any help, leading to her getting injured.
Realising the strain that is on Nina, Roy calls adult social services and asks for a reassessment of his brother, but instead of being pleased, Nina is fuming at his interference.
Christmas comes early for Steve
Steve is upset when Emma reveals Fiona has got her tickets to spend Christmas in Australia, having hoped she would spend the festive season in Weatherfield with him.
But when Amy shows Emma the stockings Steve made for them both, Emma has a change of heart and decides to spend Christmas with the McDonalds.
Coronation Street airs on Mondays, Wednesdays and Fridays at 7.30pm and 8.30pm on ITV.
Which storyline are you looking forward to the most next week? Leave us a comment on our Facebook page @EntertainmentDailyFix and let us know what you think!


Default Styles
Browsers apply default styles to some elements.
Examples include:
- Margin or padding is applied to the <body> element.
- Margin is applied to heading elements <h1> through <h6>
- Margin is applied to <p> elements.
- Margin or padding is applied to the <ul> element.


Creating an application
Please check our video tutorial on creating a new JHipster application!
- Quick start
- Questions asked when generating an application
- Using a blueprint
- Command-line options
- Tips
Quick start
First of all, create an empty directory in which you will create your application:
mkdir myapplication
Go to that directory:
cd myapplication/
To generate your application, type:
jhipster
Answer the questions asked by the generator to create an application tailored to your needs. Those options are described in the next section.
Once the application is generated, you can launch it using Maven (./mvnw
on Linux/MacOS/Windows PowerShell, mvnw
on Windows Cmd) or Gradle (./gradlew
on Linux/MacOS/Windows PowerShell, gradlew
on Windows Cmd).
Note if you are using Maven and changed front end files after first run of the ./mvnw
command then you must run ./mvnw -Pwebpack
to see the latest front end version (Gradle detects front end changes automatically and recompiles front end if needed).
The application will be available on http://localhost:8080
Important if you want to have “live reload” of your JavaScript/TypeScript code, you will need run npm start
or yarn start
. You can go to the Using JHipster in development page for more information.
If you are using “live reload” then you can speed up server start up by excluding client side tasks by ./mvnw -P-webpack
or ./gradlew -x webpack
. It speeds up especially Gradle.
Questions asked when generating an application
Some questions change depending on the previous choices you have made. For example, you won’t need to configure an Hibernate cache if you didn’t select an SQL database.
Which type of application would you like to create?
Your type of application depends on whether you wish to use a microservices architecture or not. A full explanation on microservices is available here, if unsure use the default “Monolithic application”.
You can either use:
- Monolithic application: this a classical, one-size-fits-all application. It’s easier to use and develop, and is our recommended default.
- Microservice application: in a microservices architecture, this is one of the services.
- Microservice gateway: in a microservices architecture, this is an edge server that routes and secures requests.
- JHipster UAA server: in a microservices architecture, this is an OAuth2 authentication server that secures microservices. Refer to the JHipster UAA documentation for more information.
What is the base name of your application?
This is the name of your application.
What is your default Java package name?
Your Java application will use this as its root package. This value is stored by Yeoman so that the next time you run the generator the last value will become default. You can override it by providing a new value.
Do you want to use the JHipster Registry to configure, monitor and scale your application?
The JHipster Registry is an Open Source tool used to manage your application at runtime.
It is required when using a microservices architecture (this is why this question is only asked when generating a monolith).
Which type of authentication would you like to use?
Answers to this question depend on previous answers. For example, if you selected the JHipster Registry above, you can only use JWT authentication.
Here are all the possible options:
- JWT authentication: use a JSON Web Token (JWT), which is the default choice and what most people use.
- OAuth 2.0 / OIDC Authentication: this uses an OpenID Connect server, like Keycloak or Okta, which handles authentication outside of the application. This is more secured than JWT, but it requires to set up an OpenID Connect server, so it’s a bit more complex. Please note that by default JHipster will synchronize the user data from the OpenID Connect server, and for this it will need a database.
- HTTP Session Authentication: the classical session-based authentication mechanism, which is what people usually do with Spring Security.
- Authentication with JHipster UAA server: this uses a JHipster UAA server that must be generated separately, and which is an OAuth2 server that handles authentication outside of the application.
You can find more information on our securing your application page.
Which type of database would you like to use?
You can choose between:
- An SQL database (H2, MySQL, MariaDB, PostgreSQL, MSSQL, Oracle), which you will access with Spring Data JPA
- MongoDB
- Cassandra
- Couchbase
- Neo4j
- No database (only available when using a microservice application with JWT authentication)
Which production database would you like to use?
This is the database you will use with your “production” profile. To configure it, please modify your src/main/resources/config/application-prod.yml
file.
If you want to use Oracle, you might need to be aware of current limitations when using Oracle database.
Which development database would you like to use?
This is the database you will use with your “development” profile. You can either use:
- H2, running in-memory. This is the easiest way to use JHipster, but your data will be lost when you restart your server.
- H2, with its data stored on disk. This is a better option than running in-memory, as you won’t lose your data upon application restart.
- The same database as the one you chose for production: it’s a bit more complex to set up, but it should be better in the end to work on the same database as the one you will use in production. This is also the best way to use liquibase-hibernate as described in the development guide.
To configure it, please modify your src/main/resources/config/application-dev.yml
file.
Do you want to use the Spring cache abstraction?
The Spring cache abstraction allows to use different cache implementations: you can use ehcache (local cache), Caffeine (local cache), Hazelcast (distributed cache), Infinispan (distributed cache), Memcached (another distributed cache) or Redis (configured as a single server cache). This can have a very positive impact on your application’s performance, and hence it is a recommended option.
Do you want to use Hibernate 2nd level cache?
This option will only be available if you selected to use an SQL database (as JHipster will use Spring Data JPA to access it) and selected a cache provider in the previous question.
Hibernate is the JPA provider used by JHipster, and it can use a cache provider to greatly improve its performance. As a result, we highly recommend you to use this option, and to tune your cache implementation according to your application’s needs.
Would you like to use Maven or Gradle?
You can build your generated Java application either with Maven or Gradle. Maven is more stable and more mature. Gradle is more flexible, easier to extend, and more hype.
Which other technologies would you like to use?
This is a multi-select answer, to add one or several other technologies to the application. Available technologies are:
API first development using swagger-codegen
This option lets you do API-first development for your application by integrating the Swagger-Codegen into the build.
Search engine using ElasticSearch
Elasticsearch will be configured using Spring Data Elasticsearch. You can find more information on our Elasticsearch guide.
Clustered HTTP sessions using Hazelcast
By default, JHipster uses a HTTP session only for storing Spring Security’s authentication and authorisation information. You can choose to put more data in your HTTP sessions. Using HTTP sessions will cause issues if you are running in a cluster, especially if you don’t use a load balancer with “sticky sessions”. If you want to replicate your sessions inside your cluster, choose this option to have Hazelcast configured.
WebSockets using Spring Websocket
Websockets can be enabled using Spring Websocket. We also provide a complete sample to show you how to use the framework efficiently.
Asynchronous messages using Apache Kafka
Use Apache Kafka as a publish/subscribe message broker.
Which Framework would you like to use for the client?
The client-side framework to use.
You can either use:
- Angular
- React
Would you like to use a Bootswatch theme?
The client theme to use.
You can use any themes from Bootswatch or keep the default one.
Would you like to use the Sass stylesheet preprocessor for your CSS?
Sass a great solution to simplify designing CSS. To be used efficiently, you will need to run a Webpack dev server, which will be configured automatically.
Would you like to enable internationalization support?
By default JHipster provides excellent internationalization support, both on the client side and on the server side. However, internationalization adds a little overhead, and is a little bit more complex to manage, so you can choose not to install this feature.
Please note that JHipster covers only UI internationalization. For data internationalization, you will need to code it yourself in JPA/Hibernate layer.
Which testing frameworks would you like to use?
By default JHipster provide Java unit/integration testing (using Spring’s JUnit support) and JavaScript unit testing (using Jest). As an option, you can also add support for:
- Performance tests using Gatling
- Behaviour tests using Cucumber
- Angular integration tests with Protractor
You can find more information on our “Running tests” guide.
Would you like to install other generators from the JHipster Marketplace?
The JHipster Marketplace is where you can install additional modules, written by third-party developers, to add non-official features to your project.
Using a blueprint
JHipster 5 introduces the concept of a blueprint. Blueprints are JHipster modules that can provide custom client/server side templates that will override the ones from JHipster. For example, the Kotlin blueprint replaces most of the Java server side code with Kotlin.
For example, to use the Kotlin blueprint pass the name of the blueprint like below while generating an app.
jhipster --blueprint kotlin
The name of the blueprint is saved in the .yo-rc.json
and will be automatically used while executing sub-generators like entity
, spring-controller
and spring-service
.
If a blueprint doesn’t implement a specific sub-generator, it will be skipped and the JHipster templates for the same sub-generator will be used.
Note: An application can use only one blueprint, multiple blueprints are not supported yet.
Command-line options
You can also run JHipster with some optional command-line options. Reference for those options can be found by typing jhipster app --help
.
Here are the options you can pass:
--help
- Print the generator’s options and usage--blueprint
- Specify a blueprint to use. For examplejhipster --blueprint kotlin
--skip-cache
- Do not remember prompt answers (Default: false)--skip-git
- Do not add the generated project to Git automatically (Default: false)--skip-install
- Do not automatically install dependencies (Default: false)--skip-client
- Skip the client-side application generation, so you only have the Spring Boot back-end code generated (Default: false).--skip-server
- Skip the server-side application generation, so you only have the front-end code generated (Default: false).--skip-user-management
- Skip the user management generation, both on the back-end and on the front-end (Default: false)--i18n
- Disable or enable i18n when skipping client side generation, has no effect otherwise (Default: true)--auth
- Specify the authentication type when skipping server side generation, has no effect otherwise but mandatory when usingskip-server
--db
- Specify the database when skipping server side generation, has no effect otherwise but mandatory when usingskip-server
--with-entities
- Regenerate the existing entities if they were already generated (using their configuration in the.jhipster
folder) (Default: false)--skip-checks
- Skip the check of the required tools (Default: false)--jhi-prefix
- Add prefix before services, components and state/route names (Default: jhi)--entity-suffix
- Add suffix after entities class names (Default: empty string)--dto-suffix
- Add suffix after DTOs class names (Default: DTO)--yarn
- Use Yarn instead of NPM (Default: false)--prettier-java
- Use prettier-java for formatting all Java classes (Default: false)--experimental
- Enable experimental features. Please note that these features may be unstable and may undergo breaking changes at any time--skip-fake-data
- Skip generation of fake data for development--creation-timestamp
- Set a timestamp for reproducible build. Timestamp should be a parsable js date ex: 2019-01-01. Must be used with –with-entities or import-jdl (generator-jhipster > 6.5.1)
Tips
You can also use the Yeoman command-line options, like --force
to automatically overwrite existing files. So if you want to regenerate your whole application, including its entities, you can run jhipster --force --with-entities
.


It might be helpful to base the approach for implementing this upon the work introduced with https://git.atmire.com/clients/princeton-5/-/compare/dataspace-client-DEV...dataspace-jrg5-about-help
assigned
by James R. Griffin III at 2020-12-08 14:58:53.unassigned
by James R. Griffin III at 2020-12-08 14:59:05.assigned
by Kevin McElwee at 2020-12-08 14:59:05.This branch includes various attempts to restructure the CLI, and I have migrated these to a new branch https://github.com/pulibrary/dspace-cli/tree/jrgriffiniii-restructure-autumn-2020
closed
by James R. Griffin III at 2020-12-08 03:08:18.This branch includes various attempts to restructure the CLI, and I have migrated these to a new branch https://github.com/pulibrary/dspace-cli/tree/jrgriffiniii-restructure-summer-2020
closed
by James R. Griffin III at 2020-12-08 03:10:21.I suspect that the CircleCI builds for this are blocked by https://github.com/pulibrary/dspace-jruby/pull/22
base_ref_changed
by James R. Griffin III at 2020-12-08 03:12:18.Please see https://git.atmire.com/clients/princeton-5/-/tree/oar-client-DEV/dspace-jspui for reference, as this is where the theme for the JSPUI should be modified.
assigned
by Kevin McElwee at 2020-12-08 15:03:52.I will need to enquire about this, but this should be finished.
assigned
by James R. Griffin III at 2020-12-08 15:05:47.A support request with the OIT has been created with https://princeton.service-now.com/service?id=ticket&table=task&sys_id=878b4d1c1b4d2010435885d56b4bcb5b
assigned
by James R. Griffin III at 2020-12-08 20:30:05.I am going to close this until #22 is prepared for a clean merge.
closed
by James R. Griffin III at 2020-12-08 02:59:22.base_ref_changed
by James R. Griffin III at 2020-12-08 03:04:29.This is now no longer block for CircleCI builds.
base_ref_changed
by James R. Griffin III at 2020-12-08 03:04:44.head_ref_force_pushed
by James R. Griffin III at 2020-12-08 03:32:53.head_ref_force_pushed
by James R. Griffin III at 2020-12-08 17:07:30.head_ref_force_pushed
by James R. Griffin III at 2020-12-08 18:43:27.labeled
by Kim Leaman at 2020-12-07 23:28:48.labeled
by Kim Leaman at 2020-12-07 23:28:48.labeled
by Kim Leaman at 2020-12-07 23:28:48.labeled
by Kim Leaman at 2020-12-07 23:28:48.labeled
by Kevin McElwee at 2020-12-08 17:16:33.labeled
by Kevin McElwee at 2020-12-08 17:16:33.labeled
by Kevin McElwee at 2020-12-08 17:18:17.Ephemera project link: https://figgy.princeton.edu/catalog/126bb7fd-afbe-4133-ac20-9deae5109e5a
All done.
labeled
by Kim Leaman at 2020-12-08 18:58:42.labeled
by Kim Leaman at 2020-12-08 18:58:42.mentioned
by Trey Pendragon at 2020-12-08 18:58:42.subscribed
by Trey Pendragon at 2020-12-08 18:58:42.assigned
by Trey Pendragon at 2020-12-08 18:58:42.closed
by Trey Pendragon at 2020-12-08 22:14:32.referenced
by Kevin Reiss at 2020-12-08 14:45:12.merged
by Kevin Reiss at 2020-12-08 14:45:12.closed
by Kevin Reiss at 2020-12-08 14:45:12.head_ref_deleted
by Kevin Reiss at 2020-12-08 14:45:17.head_ref_deleted
by None at 2020-12-08 14:59:52.referenced
by Axa Mei Liauw at 2020-12-08 15:07:47.merged
by Axa Mei Liauw at 2020-12-08 15:07:47.closed
by Axa Mei Liauw at 2020-12-08 15:07:47.head_ref_deleted
by Axa Mei Liauw at 2020-12-08 15:07:51.head_ref_force_pushed
by None at 2020-12-08 15:49:38.referenced
by Axa Mei Liauw at 2020-12-08 15:56:13.merged
by Axa Mei Liauw at 2020-12-08 15:56:13.closed
by Axa Mei Liauw at 2020-12-08 15:56:13.head_ref_deleted
by Axa Mei Liauw at 2020-12-08 15:56:16.This looks to be quite dated; I'm going to close this, retain the branch, and attempt to rebase this.
👍 Is the error high-impact? It might be worth just letting it go given our code freeze.
closed
by James R. Griffin III at 2020-12-08 02:51:49.renamed
by None at 2020-12-08 14:12:05.referenced
by Christina Chortaria at 2020-12-08 14:30:24.merged
by Christina Chortaria at 2020-12-08 14:30:24.closed
by Christina Chortaria at 2020-12-08 14:30:24.head_ref_deleted
by Christina Chortaria at 2020-12-08 14:30:25.unlabeled
by None at 2020-12-08 14:55:02.Coverage remained the same at 82.059% when pulling cfb8baa32182deb8fe5b6ae7e4638bf199a81144 on issues-865-jrgriffiniii-lando into 6a0227df4a4a0fa3cb3693b9e51fd93a610183a0 on main.
head_ref_force_pushed
by James R. Griffin III at 2020-12-08 02:46:19.review_requested
by Christina Chortaria at 2020-12-08 15:15:17.convert_to_draft
by James R. Griffin III at 2020-12-08 15:40:24.labeled
by None at 2020-12-08 16:12:41.For user with barcode 123456789
:
/almaws/v1/users/123456789?user_id_type=BARCODE
/almaws/v1/users/123456789?user_id_type=all_unique
[all_unique
is default]
For user with primary identifier (could be netid) NivA
:
/almaws/v1/users/NivA?user_id_type=all_unique
/almaws/v1/users/NivA?user_id_type=PRIMARYIDENTIFIER
[this should work but it looks like ExL needs to activate user_type PRIMARYIDENTIFIER
; could also define institution id INST_ID
, etc.]
Full request URL is like e.g.:
https://api-na.hosted.exlibrisgroup.com/almaws/v1/users/123456789?user_id_type=BARCODE&view=full&expand=none&apikey=foo
labeled
by None at 2020-12-08 16:12:46.Coverage increased (+0.3%) to 77.273% when pulling e5bfdbf82848ef6a5e508b71f11d2edafbd8fbae on alma-availability-start into 8c4d15c5e92902f4de189a560ae1bb94886a8c77 on alma.
review_requested
by Christina Chortaria at 2020-12-08 14:31:50.referenced
by Christina Chortaria at 2020-12-08 21:38:55.merged
by Christina Chortaria at 2020-12-08 21:38:55.closed
by Christina Chortaria at 2020-12-08 21:38:55.head_ref_deleted
by Christina Chortaria at 2020-12-08 21:38:56.Coverage decreased (-4.8%) to 77.273% when pulling c86823864b6ce76dd33eb50b3646bf16d947af1b on alma into d2923fd010050b3acf04ce4de47e1727e9442bc4 on main.
@mzelesky @christinach I'm trying to do on_reserve
, I see the comments on https://github.com/pulibrary/marc_liberation/issues/641 but it's not clear to me what on_reserve: Y
means. Does that mean it's in a course reserve?
mentioned
by Christina Chortaria at 2020-12-08 23:23:00.subscribed
by Christina Chortaria at 2020-12-08 23:23:00.mentioned
by None at 2020-12-08 23:23:00.subscribed
by None at 2020-12-08 23:23:00.SCSB is not changing with respect to how this interface is used.
I'm having a tough time getting /items
to work, it's just timing out for me.
labeled
by None at 2020-12-08 16:12:53.We'll have to update the Alma client for this.
labeled
by None at 2020-12-08 14:17:22.labeled
by Kevin McElwee at 2020-12-08 17:11:44.labeled
by Kevin McElwee at 2020-12-08 17:11:44.labeled
by Kevin McElwee at 2020-12-08 17:13:19.labeled
by Kevin McElwee at 2020-12-08 17:13:20.labeled
by Kevin McElwee at 2020-12-08 17:19:01.labeled
by Kim Leaman at 2020-12-07 23:04:30.labeled
by Kim Leaman at 2020-12-07 23:04:30.labeled
by Kim Leaman at 2020-12-07 23:04:30.assigned
by None at 2020-12-07 23:04:31.assigned
by Esmé Cowles at 2020-12-07 23:04:31.assigned
by Kim Leaman at 2020-12-07 23:04:31.added_to_project
by None at 2020-12-08 13:54:16.closed
by None at 2020-12-08 14:05:40.referenced
by None at 2020-12-08 14:05:39.merged
by None at 2020-12-08 14:05:40.closed
by None at 2020-12-08 14:05:40.head_ref_deleted
by None at 2020-12-08 14:05:41.closed
by Francis Kayiwa at 2020-12-08 14:25:18.referenced
by Francis Kayiwa at 2020-12-08 14:25:18.merged
by Francis Kayiwa at 2020-12-08 14:25:18.closed
by Francis Kayiwa at 2020-12-08 14:25:19.head_ref_deleted
by Francis Kayiwa at 2020-12-08 14:25:20.referenced
by Kevin Reiss at 2020-12-08 14:43:28.merged
by Kevin Reiss at 2020-12-08 14:43:28.closed
by Kevin Reiss at 2020-12-08 14:43:28.head_ref_deleted
by Kevin Reiss at 2020-12-08 14:43:29.closed
by Francis Kayiwa at 2020-12-08 14:45:04.referenced
by Francis Kayiwa at 2020-12-08 14:45:04.merged
by Francis Kayiwa at 2020-12-08 14:45:04.closed
by Francis Kayiwa at 2020-12-08 14:45:04.head_ref_deleted
by Francis Kayiwa at 2020-12-08 14:45:05.review_requested
by Francis Kayiwa at 2020-12-08 14:54:44.closed
by Francis Kayiwa at 2020-12-08 16:00:23.referenced
by Francis Kayiwa at 2020-12-08 16:00:23.merged
by Francis Kayiwa at 2020-12-08 16:00:23.closed
by Francis Kayiwa at 2020-12-08 16:00:23.head_ref_deleted
by Francis Kayiwa at 2020-12-08 16:00:24.closed
by Francis Kayiwa at 2020-12-08 17:18:31.referenced
by Francis Kayiwa at 2020-12-08 17:18:31.merged
by Francis Kayiwa at 2020-12-08 17:18:31.closed
by Francis Kayiwa at 2020-12-08 17:18:31.head_ref_deleted
by Francis Kayiwa at 2020-12-08 17:18:32.closed
by Francis Kayiwa at 2020-12-08 17:39:09.review_requested
by Francis Kayiwa at 2020-12-08 14:41:53.referenced
by Francis Kayiwa at 2020-12-08 17:39:09.merged
by Francis Kayiwa at 2020-12-08 17:39:09.closed
by Francis Kayiwa at 2020-12-08 17:39:09.head_ref_deleted
by Francis Kayiwa at 2020-12-08 17:39:10.closed
by Francis Kayiwa at 2020-12-08 18:10:13.referenced
by Francis Kayiwa at 2020-12-08 18:10:12.merged
by Francis Kayiwa at 2020-12-08 18:10:13.closed
by Francis Kayiwa at 2020-12-08 18:10:13.head_ref_deleted
by Francis Kayiwa at 2020-12-08 18:10:14.head_ref_force_pushed
by None at 2020-12-08 16:41:33.head_ref_force_pushed
by None at 2020-12-08 17:01:38.head_ref_force_pushed
by None at 2020-12-08 18:02:40.referenced
by None at 2020-12-08 18:52:40.merged
by None at 2020-12-08 18:52:40.closed
by None at 2020-12-08 18:52:40.head_ref_deleted
by None at 2020-12-08 18:52:41.closed
by Francis Kayiwa at 2020-12-08 19:37:34.head_ref_force_pushed
by Francis Kayiwa at 2020-12-08 16:04:43.referenced
by Francis Kayiwa at 2020-12-08 19:37:34.merged
by Francis Kayiwa at 2020-12-08 19:37:34.closed
by Francis Kayiwa at 2020-12-08 19:37:34.head_ref_deleted
by Francis Kayiwa at 2020-12-08 19:37:35.@kayiwa why is the approvals change over part of this PR? You have another PR that also does it.
@kayiwa why is the approvals change over part of this PR? You have another PR that also does it.
Ugh! will fix.
head_ref_force_pushed
by Francis Kayiwa at 2020-12-08 16:54:45.mentioned
by Francis Kayiwa at 2020-12-08 17:14:14.subscribed
by Francis Kayiwa at 2020-12-08 17:14:14.mentioned
by Francis Kayiwa at 2020-12-08 17:32:17.subscribed
by Francis Kayiwa at 2020-12-08 17:32:17.convert_to_draft
by Francis Kayiwa at 2020-12-08 18:03:14.closed
by Francis Kayiwa at 2020-12-08 20:37:35.closed
by Francis Kayiwa at 2020-12-08 21:30:49.referenced
by Francis Kayiwa at 2020-12-08 21:30:49.merged
by Francis Kayiwa at 2020-12-08 21:30:49.closed
by Francis Kayiwa at 2020-12-08 21:30:49.head_ref_deleted
by Francis Kayiwa at 2020-12-08 21:30:50.head_ref_force_pushed
by Francis Kayiwa at 2020-12-08 21:36:23.closed
by Francis Kayiwa at 2020-12-08 21:51:02.referenced
by Francis Kayiwa at 2020-12-08 21:51:02.merged
by Francis Kayiwa at 2020-12-08 21:51:02.closed
by Francis Kayiwa at 2020-12-08 21:51:02.head_ref_deleted
by Francis Kayiwa at 2020-12-08 21:51:03.At least some of the images have been mis-filed (with the previous item, for example). Cliff will review all the items on the Isilon and move images to the right places; Kim will then update the Figgy objects to match.
assigned
by Shaun Ellis at 2020-12-08 16:31:44.referenced
by Shaun Ellis at 2020-12-08 16:52:31.PROBLEM: Don Thornbury just alerted me to the fact that the AbID db is also used by catalogers / non-archivists, for data that does not live in ASpace. (They use MacroExpress to add it to Voyager). That means the current implementation plan doesn't work, since it relies on ASpace to know what the next available number in the sequence is.
Essentially, to maintain that functionality, we need a freestanding tool that both generates and stores the AbIDs (or the last available for each profile, anyway) externally, and EITHER overwrites the ASpace record OR outputs the AbID's as XML (or sends them to Alma, later).
From Kevin on Slack:
I think we could support it in the context of the libjobs if we agree to take on the responsibility of persisting the IDs.
We probably wouldn't have to persist all AbID's--just the last one for each super-location (Firestone, Mudd) + profile. And at the end of each bulk update operation, we'd have to overwrite that value for next time.
milestoned
by None at 2020-12-08 18:13:11.milestoned
by None at 2020-12-08 18:18:08.Resolved: Confluence is back up in cf7a136
.
labeled
by Francis Kayiwa at 2020-12-08 03:46:26.labeled
by Francis Kayiwa at 2020-12-08 03:46:26.locked
by Francis Kayiwa at 2020-12-08 03:46:27.closed
by Francis Kayiwa at 2020-12-08 03:58:38.


neon_index.Rd
NEON products consist of several individual components, which are in turn broken up by site and sampling month. By storing these individual files, neonstore enables more reproducible workflows that can be traced back to original, unaltered input data. These atomized files can be quickly and easily combined into unified tables, see neon_read.
neon_index( product = NA, table = NA, site = NA, start_date = NA, end_date = NA, type = NA, ext = NA, timestamp = NA, release = NA, hash = NULL, dir = neon_dir(), deprecated = TRUE )
| product | A NEON |
|---|---|
| table | Include only files matching this table name (or regex pattern). (optional). |
| site | 4-letter site code(s) to filter on. Leave as |
| start_date | Download only files as recent as ( |
| end_date | Download only files up to end_date ( |
| type | Should we prefer the basic or expanded version of this product? Note that not all products have expanded formats. |
| ext | only match files with this file extension(s) |
| timestamp | only match timestamps prior this. See details in |
| release | Select only data files associated with a particular release tag, see https://www.neonscience.org/data-samples/data-management/data-revisions-releases, e.g. "RELEASE-2021". Releases are associated with a specific DOI and the promise that files associated with a particular release will not change. |
| hash | name of a hashing algorithm to check file integrity. Can be
|
| dir | Location where files should be downloaded. By default will
use the appropriate applications directory for your system
(see |
| deprecated | Should the index include files that have since been deprecated by more recent downloads? logical, default TRUE. |
File names include metadata such as the file productCode,
table name, site, and sampling month, as well as timestamp of creation.
neon_index()
parses this metadata from the file name string and returns
the information in a convenient table, along with a path to each file.
Regarding timestamps: NEON will occasionally publish new versions of
previously-released raw data files (which may or may not actually differ).
The NEON download API, and hence neon_download()
, only serve the most recent
of such files, but earlier versions may still exist in your local neonstore
if you downloaded them before the updated files were released. By default,
neon_read()
will always select the most recent of such files, thus avoiding
duplication and providing the most updated data. For reproducibility however,
it may be necessary to access older version instead. Setting the timestamp
argument allows the user to filter out newer files and select the original
ones instead. Unfortunately, at this time users cannot request the outdated
data files from NEON API. For strict reproducibility, users should also
archive their local store.
# \dontshow{ # Hide setting tempfile, since a user would specify a persistent location Sys.setenv("NEONSTORE_HOME"=tempfile()) # } neon_index()#> NULL## Just bird survey product neon_index("DP1.10003.001")#> NULL


M3C Admin Form
Upload Profile Picture
Create New Person
Associate a Person with Inst/Dept/Lab
Modify an Organization's Parent
Change a Person's Withholding
Change an Organization's Withholding
Modify a Person's Aliases
Edit Publications for a Person
Add or Edit a Person's Overview
View the Organization Tree


| Opcode/Instruction | Op/En | 64/32 bit Mode Support | CPUID Feature Flag | Description |
|---|---|---|---|---|
| NP 0F 38 F9 /r MOVDIRI m32, r32 | A | V/V | MOVDIRI | Move doubleword from r32 to m32 using direct store. |
| NP REX.W + 0F 38 F9 /r MOVDIRI m64, r64 | A | V/N.E. | MOVDIRI | Move quadword from r64 to m64 using direct store. |
1. The Mod field of the ModR/M byte cannot have value 11B.
| Op/En | Tuple | Operand 1 | Operand 2 | Operand 3 | Operand 4 |
|---|---|---|---|---|---|
| A | NA | ModRM:r/m (w) | ModRM:reg (r) | NA | NA |
Moves the doubleword integer in the source operand (second operand) to the destination operand (first operand) using a direct-store operation. The source operand is a general purpose register. The destination operand is a 32-bit memory location. In 64-bit mode, the instruction’s default operation size is 32 bits. Use of the REX.R prefix permits access to additional registers (R8-R15). Use of the REX.W prefix promotes operation to 64 bits. See summary chart at the beginning of this section for encoding data and limits.
The direct-store is implemented by using write combining (WC) memory type protocol for writing data. Using this protocol, the processor does not write the data into the cache hierarchy, nor does it fetch the corresponding cache line from memory into the cache hierarchy. If the destination address is cached, the line is written-back (if modified) and invalidated from the cache, before the direct-store. Unlike stores with non-temporal hint that allow uncached (UC) and write-protected (WP) memory-type for the destination to override the non-temporal hint, direct-stores always follow WC memory type protocol irrespective of the destination address memory type (including UC and WP types).
Unlike WC stores and stores with non-temporal hint, direct-stores are eligible for immediate eviction from the write-combining buffer, and thus not combined with younger stores (including direct-stores) to the same address. Older WC and non-temporal stores held in the write-combing buffer may be combined with younger direct stores to the same address. Because WC protocol used by direct-stores follows a weakly-ordered memory consistency model, a fencing operation using SFENCE or MFENCE should follow the MOVDIRI instruction to enforce ordering when needed.
Direct-stores issued by MOVDIRI to a destination aligned to a 4-byte boundary (8-byte boundary if used with REX.W prefix) guarantee 4-byte (8-byte with REX.W prefix) write-completion atomicity. This means that the data arrives at the destination in a single undivided 4-byte (or 8-byte) write transaction. If the destination is not aligned for the write size, the direct-stores issued by MOVDIRI are split and arrive at the destination in two parts. Each part of such split direct-store will not merge with younger stores but can arrive at the destination in either order. Availability of the MOVDIRI instruction is indicated by the presence of the CPUID feature flag MOVDIRI (bit 27 of the ECX register in leaf 07H, see “CPUID—CPU Identification” in the Intel® 64 and IA-32 Architectures Software Developer’s Manual, Volume 2A).
DEST ← SRC;
MOVDIRI void _directstoreu_u32(void *dst, uint32_t val)
MOVDIRI void _directstoreu_u64(void *dst, uint64_t val)
| #GP(0) | For an illegal memory operand effective address in the CS, DS, ES, FS or GS segments. |
| #SS(0) | For an illegal address in the SS segment. |
| #PF | (fault-code) For a page fault. |
| #UD | If CPUID.07H.0H:ECX.MOVDIRI[bit 27] = 0. |
| If LOCK prefix or operand-size (66H) prefix is used. | |
| #AC | If alignment checking is enabled and an unaligned memory reference made while in current privilege level 3. |
| #GP | If any part of the operand lies outside the effective address space from 0 to FFFFH. |
| #UD | If CPUID.07H.0H:ECX.MOVDIRI[bit 27] = 0. |
| If LOCK prefix or operand-size (66H) prefix is used. |
Same exceptions as in real address mode.
| #PF | (fault-code) For a page fault. |
| #AC | If alignment checking is enabled and an unaligned memory reference made while in current privilege level 3. |
Same exceptions as in protected mode.
| #SS(0) | If memory address referencing the SS segment is in non-canonical form. |
| #GP(0) | If the memory address is in non-canonical form. |
| #PF | (fault-code) For a page fault. |
| #UD | If CPUID.07H.0H:ECX.MOVDIRI[bit 27] = 0. |
| If LOCK prefix or operand-size (66H) prefix is used. | |
| #AC | If alignment checking is enabled and an unaligned memory reference made while in current privilege level 3. |


Leif E. Östman
I have picked out the philosophy of Dewey as a philosophy favourable tothe characteristic type of knowledge inherent in design processes.
Unread


Show data from the last:
1 minute
5 minutes
15 minutes
60 minutes
Who is using Idealist.org
Built using
WebGL Globe
•
Data acquired using
GeoIpAnalytics


Historic Mayo hotel to get exterior facelift
WORK has started on the painting of the exterior of the historic Imperial Hotel in Castlebar.
John Condon, head of the Castlebar Municipal District, confirmed the building, which had become an eyesore in recent years, is being tidied up.
A plan is being formulated for a complete renovation of the premises where the Irish Land League was founded in 1878.
Those plans are expected to be completed next year and put on public display as part of a consultation process.
Councillor Ger Deere welcomed the news that works had commenced to give the building a facelift.
But he will continue to campaign for the former hotel to be given a new lease of life as a museum, tourist office or municipal district headquarters.
"The manner in which it has been allowed to fall into decline in recent years has been an embarrassment for Castlebar," he stated.
Mayo County Council are the owners of the building at the Mall.
Meanwhile, Mr. Condon confirmed that plans are being drafted for the old Castlebar swimming pool and will be revealed within the coming months.


I am a junior (graduating Dec 2021) at the University of Michigan studying
Computer Science Engineering.
Outside of academics, I love to read (mostly fiction), bake (anything from cookies to breads to danishes), watch and play sports (always my Michigan Wolverines)!
May 2020 - August 2020
August 2019 - May 2020
May 2019 - August 2019
September 2018 - April 2019
November 2013 - August 2018
December 2015 - May 2018
Throughout high school I played Volleyball and was captain for many years.
During quarantine, I've stayed busy with learning how to crochet! I started out with little animals, and now I'm working on a large blanket.
I LOVE to bake. Anything from breads to cookies to savory pies.
I also love to read! I always try to keep a book with me at all times. My favorite author is Ruth Ware.


Klustr
search
close
account_circle
Account
face
Profile
settings
Settings
people
Admin
exit_to_app
Logout
view_module
Collections
library_add
New Collection
info
About
Welcome to Klustr!
Collect your favorite videos, music, and photos in a collaborative space that you can share with your friends, or save for your own convienience and enjoyment!


GitSearch is a web service that lists software development projects from various git users. It's inspired by the way you work.


Before Change
def _merge_overlapping(table, combiners):
Merge overlapping regions within a group.
// Short-circuit the simple, common cases
if len(table) == 1:
return table
if table["start"].nunique() == table["end"].nunique() == 1:
return _squash_rows(table, combiners)
After Change
// advantage of the grouping and sorting already done, and don"t repeat
// pandas" traversal and inferences.
// ENH: Find & use a lower-level, 1-pass pandas function
keyed_groups = itertools.izip(_nonoverlapping_groups(table),
table.itertuples(index=False))
merged_rows = [_squash_tuples(row_group, combiners)
for _key, row_group in itertools.groupby(keyed_groups,
lambda x: x[0])]
return pd.DataFrame.from_records(merged_rows, columns=merged_rows[0]._fields)
def _nonoverlapping_groups(table):


This is an interesting town with a castle, a museum and very good beaches. It is situated south of Goteborg, in the Kattegat.
The old commercial harbour is convenient for the town and the train station, but the marina at Getteron has most of the services including chandlery, boatyard and engineers.
There is a ferry link between them.


After several months of success with emoncms on shared Linux hosting, I noticed one day that changes made to my feeds or other settings would not stay changed.
For example, if I change the timezone, the next time I load the Account page the timezone reverts to the previous setting. Most importantly, I can't create feeds or dashboards for any user! I can't make existing feeds private or public- the icon will change for 1 sec or so but then will revert to the previous setting.
Oddly, I can register new users, that's the only thing "MySQL related" that works.
I can go into phpMyAdmin and change the time zone etc. manually, and that works. But emoncms is no longer able to change the parameters.
Observation #2: I needed to move to a different hosting account anyway, so I dowloaded the latest "EmonCMS for Shared Linux Hosting" ZIP file and installed 8.3.6 all over again in a new hosting account. However, I have the same exact symptoms!
I've tried a zillion things with no luck. Any ideas?
Thanks in advance,
Jeff
Re: MySQL has stopped accepting changes - can't create feeds etc.
So the ISP got me a link to the error logs, and this is what I see over and over:
20141002T035650: www.mywebsite.com/index.php
PHP Notice: Undefined index: write in /hermes/bosoraweb078/b163/ipw.mywebsite/public_html/emoncms/Modules/input/input_controller.php on line 22
PHP Warning: Cannot modify header information - headers already sent by (output started at /hermes/bosoraweb078/b163/ipw.mywebsite/public_html/emoncms/Modules/input/input_controller.php:22) in /hermes/bosoraweb078/b163/ipw.mywebsite/public_html/emoncms/index.php on line 131
Re: MySQL has stopped accepting changes - can't create feeds etc.
The "headers already sent" error message is usually caused by one of the following:
Whitespace before <?php or after ?>
UTF-8 Byte Order Mark
Previous error messages or notices
print, echo and other functions producing output (like var_dump)
Raw <html> areas before <?php code
Here's a link that'll help you find the problem, and how to fix it:
http://stackoverflow.com/questions/8028957/how-to-fix-headers-already-sent-error-in-php
Regards,
Bill
Re: MySQL has stopped accepting changes - can't create feeds etc.
Thanks Bill for the help! Using your info I was able to fix the "headers already sent" error by replacing the error-ing files with new ones from the .zip. I must have touched them and changed them in my quest for an answer to the "can't create feeds" problem.
However, that had no effect on the problem apparently! I was able to look at the code in the web browser's debugger while making a feed, and here is what is failing while trying to make a new feed named "asdf":
GET http://data.peakmonitor.com/input/set.json [HTTP/1.1 200 OK 3450ms]
Object { id: "2", nodeid: "6", name: "2", description: "asdf", processList: null, time:<PHONE_NUMBER>, value: "94" } view:245
Array [ ] processlist.js:19
GET http://data.peakmonitor.com/feed/create.json [HTTP/1.1 200 OK 608ms]
Do you see anything wrong with that request?
Re: MySQL has stopped accepting changes - can't create feeds etc.
Hello Jeff, do you mind if I create a user on http://data.peakmonitor.com and run some tests? you might want to turn user creation off afterwards in settings.php, as anyone can do so at the moment.
Re: MySQL has stopped accepting changes - can't create feeds etc.
Hi Trystan,
Yes please! I've run out of ideas and my hosting provider says that everything is fine (even though it isn't)... your input would be very valuable.
Re: MySQL has stopped accepting changes - can't create feeds etc.
Is there a way that I can log errors created by JSON requests to mySQL? My shared hosting doesn't have Log4PHP, and there are no errors in the CGI error log they provide.
I'm still stuck with nothing working and no error messages.
Re: MySQL has stopped accepting changes - can't create feeds etc.
I finally heard back from my ISP. I had them look at their error logs while logging in and trying to change the timezone of my emoncms test user. This is the error message they received:
PHP Notice: Trying to get property of non-object in /hermes/bosoraweb078/b163/ipw.mydomainname/public_html/emoncms/Modules/user/user_model.php on line 456
Here is what I see when looking in to user_model.php at lines 453-456:
Any ideas as to what this means?
Re: MySQL has stopped accepting changes - can't create feeds etc.
New development: Bill Thompson suggested I try a different web host, so I installed emoncms (8.3.6) at a hosting account I have at GoDaddy. And.... drumroll... it works!
I've re-installed emoncms on the original host (iPower.com) three times, using the same methods that worked at GoDaddy. But I still cannot make changes or start feeds. The error messages are all the same "Trying to get property of non-object" like this one:
20141007T003652: www.mydomainname.com/emoncms/index.php
PHP Notice: Trying to get property of non-object in /hermes/bosoraweb078/b163/ipw.mydomainname/public_html/emoncms/Modules/user/user_model.php on line 456
And iPower tech support can reproduce the error, but blame emoncms. They have given up.
Time to ask for a refund from iPower???
It's odd because I had emoncms running in another hosting account at iPower for months without trouble. Now that one is dead too, maybe they changed settings?
Re: MySQL has stopped accepting changes - can't create feeds etc.
Well, I am still down more than a week later. I requested a refund iPower.com but they don't want to give me one, so I've fought with them a little more. Does this bit from the emoncms LinuxInstall.md documentation apply to shared hosts?
Re: MySQL has stopped accepting changes - can't create feeds etc.
It's highly likely that a shared hosting won't allow you access to Apache's config files. I think you'll have to find a way to achieve the same thing in .htaccess (either at your root level or at the directory level in question). While "AllowOverride" controls what .htaccess can do, you might be forever stuck; but it's likely the hosting provider will allow it to do what they perceive to be 'non-dangerous' things.


Malum's is a friendly spotify interface for easier managing of queues. Click play or check app tutorial.
Login via google, facebook or spotify account.


|
QuantLib: a free/open-source library for quantitative finance
Fully annotated sources - version 1.30
|
Base class for line search. More...
#include <ql/math/optimization/linesearch.hpp>
Public Member Functions | |
| LineSearch (Real=0.0) | |
| Default constructor. More... | |
| virtual | ~LineSearch ()=default |
| Destructor. More... | |
| const Array & | lastX () |
| return last x value More... | |
| Real | lastFunctionValue () const |
| return last cost function value More... | |
| const Array & | lastGradient () |
| return last gradient More... | |
| Real | lastGradientNorm2 () const |
| return square norm of last gradient More... | |
| bool | succeed () const |
| virtual Real | operator() (Problem &P, EndCriteria::Type &ecType, const EndCriteria &, Real t_ini)=0 |
| Perform line search. More... | |
| Real | update (Array ¶ms, const Array &direction, Real beta, const Constraint &constraint) |
| const Array & | searchDirection () const |
| current value of the search direction More... | |
| Array & | searchDirection () |
Protected Attributes | |
| Array | searchDirection_ |
| current values of the search direction More... | |
| Array | xtd_ |
| new x and its gradient More... | |
| Array | gradient_ |
| Real | qt_ = 0.0 |
| cost function value and gradient norm corresponding to xtd_ More... | |
| Real | qpt_ = 0.0 |
| bool | succeed_ = true |
| flag to know if linesearch succeed More... | |
Base class for line search.
Definition at line 38 of file linesearch.hpp.
|
explicit |
Default constructor.
Definition at line 41 of file linesearch.hpp.
|
virtualdefault |
Destructor.
| const Array & lastX | ( | ) |
return last x value
Definition at line 46 of file linesearch.hpp.
| Real lastFunctionValue | ( | ) | const |
return last cost function value
Definition at line 48 of file linesearch.hpp.
| const Array & lastGradient | ( | ) |
return last gradient
Definition at line 50 of file linesearch.hpp.
| Real lastGradientNorm2 | ( | ) | const |
return square norm of last gradient
Definition at line 52 of file linesearch.hpp.
| bool succeed | ( | ) | const |
Definition at line 54 of file linesearch.hpp.
|
pure virtual |
Perform line search.
Implemented in ArmijoLineSearch, and GoldsteinLineSearch.
| Real update | ( | Array & | params, |
| const Array & | direction, | ||
| Real | beta, | ||
| const Constraint & | constraint | ||
| ) |
Definition at line 26 of file linesearch.cpp.
| const Array & searchDirection | ( | ) | const |
current value of the search direction
Definition at line 67 of file linesearch.hpp.
| Array & searchDirection | ( | ) |
Definition at line 68 of file linesearch.hpp.
|
protected |
current values of the search direction
Definition at line 71 of file linesearch.hpp.
|
protected |
new x and its gradient
Definition at line 73 of file linesearch.hpp.
|
protected |
Definition at line 73 of file linesearch.hpp.
|
protected |
cost function value and gradient norm corresponding to xtd_
Definition at line 75 of file linesearch.hpp.
|
protected |
Definition at line 75 of file linesearch.hpp.
|
protected |
flag to know if linesearch succeed
Definition at line 77 of file linesearch.hpp.


If you like the information provided by us and you are not willing to harm our website as we do not intend to harm you, please turn off your AdBlocker,
so we can continue earning some money and pay the rent of the website at least. Eventually we might even be able to buy a beer to our dev team.
Our advertisements are provided thanks to Google Ads which guarantees your security.
NO PopUp's, NO Flashing stuff, NO Viruses!


Justice Nathan Musa gave the ruling on Monday following an earlier plea of guilt by the accused.
The judge said the court had considered the plea by the convict’s counsel for a mitigated sentence, and therefore sentenced him on the nine counts charge.
He said, “On counts one to three, I sentence you to six months each with the option of fine of N20,000 to each.
“On count eight, I sentence you to three years imprisonment with the option of N50,000 fine.
“On counts four, five, six, seven and 10, I sentence you to 10 years of prison term on each of the counts without the option of a fine.”
Justice Nathan added that all the terms will run concurrently. This means that he will spend 10 years behind bars.
Mr Mustapha was arrested by the State Security Services in June this year for operating without valid papers.
The state government accused him of responsibility for the death of dozens of patients, vowing to ensure he was brought to book to serve as a deterrent to others.
During his parade by the SSS, Mr Mustapha had claimed that despite operating without valid documents, he never killed anybody.
He said he had successfully carried out major and minor operations on dozens of patients since he began operation.


To construct the midpoint of a given line segment:
Construct the perpendicular bisector;
The midpoint is where the perpendicular bisector intersects the line.


Ocean [as40], ocean, in The Inner Sea ------------------------------------------------------------------------ Routes leaving Ocean: North, to Ocean [ar40], 6 days East, to Ocean [as41], 5 days South, to Ocean [at40], 6 days West, to Ocean [as39], 5 days It is raining.


Clairvoyancy tokens
None
1 – 4 only
All (1 – 6)
Crows
1 per turn
3 per game
1 per game
Additional rules (2 players)
Additional rules (3 players)
-
The clairvoyancy track, the related markers, and the
clairvoyancy tokens are not used.
- Each player plays with two psychics.
-
During the shared vision, the three vision cards are
placed face up.
-
Randomly create two additional groups of cards (with a character, a location and
an object
a story
in each group) using psychic cards discarded during the game, bringing the total
number of groups to four. Then place the tokens numbered 1 to 4 by the four groups
thus formed.
-
Psychics vote openly rather than in secret. The two players with the role of
psychics must agree which group to identify as the suspected culprit's group and
place their two intuition tokens on it.
A doodle by Mikkel Paulson. Source code on GitHub.


Tony Cascarino takes aim at Roberto after West Ham’s weekend loss to Tottenham
Cascarino can’t understand why David Martin hasn’t been handed a chance.
by Sam PrestonTony Cascarino criticised West Ham goalkeeper Roberto after another nervous display in the 3-2 home defeat against London rivals Tottenham.
Cascarino says he will be asking reserve stopper David Martin’s dad Alvin what his son needs to do to get into the Hammers team, as per the Times.
He said: “I’m doing a gig with Alvin Martin on Thursday and I’ll be asking him what on earth his son David has to do to get in the West Ham team. With Lukasz Fabianski out injured, Martin is on the bench. He’s been kept out by Roberto and I’m not sure I’ve ever seen a worse goalkeeper in the Premier League.
“Game after game he’s making mistake after mistake. He’s been so poor I don’t know why he’s keeping his place. Martin may be 33 and he may have spent most of his career away from the top flight with MK Dons, but he must be a more solid option.”
TBR’s View – Martin would surely offer West Ham more confidence right now
It’s not often that a goalkeeper as lacking in Premier League experience as Martin could be viewed as an improvement in terms of confidence but that’s the case now.
Roberto is now a liability, spreading panic through the fans and his team-mates and opponents are now targeting in the hope of forcing a mistake.
Martin has to come into the frame, at least to ease some of the pressure on the Spaniard at the moment.
Have something to tell us about this article?
Let us know


This data is used to determine whether rewards and benefits act as incentives when it comes to staff retention. It also reveals the type of incentives that are being offered in the sector and how common they are.
Include bank holidays in the total. For example, 20 days annual leave plus 8 bank holidays would be 28 days in total.


Electricity for all by 2030 shows slow pace of dev't – NDC to NPP
MP for Ketu South Constituency, Fifi Kwetey, has lamented at the New Patriotic Party’s resolve to push for universal electricity coverage to all by 2030.
According to him, the Akufo-Addo led administration in just 4 years has increased electricity coverage by just 0.5 percent.
“We handed over to them a country that has seen an increase in electricity coverage from 52 percent to 83 percent and in just 4 years, they have been able to only increase electricity coverage by 0.5 percent, not even 1 percent, whereas we [NDC] were on cause to providing universal coverage by the end of 2020”
“They have come into office today and they had to push the universal electricity coverage to 2030 because they are moving at such a slow pace and there’s no way they will be able to extend electricity coverage like the way we [NDC] were doing,” he remarked.
Fifi Kwetey said this on Wednesday, November 20 when the NDC held a public forum in reaction to the 2020 Budget and Economic Policy in Accra.
Fifi Kwetey also indicated that the John Mahama led government had left behind water coverage that moved from a rate of 57 percent to 76 percent yet they [NPP] claim the NDC left an economic mess.


ABOUT TRITON-S-PARK
ABOUT TRITON-S-PARK
OUR MISSION:
We’re on a mission to empower people to get where they need to go with confidence. Triton-s-PARK makes parking easy so you can focus on the things that matter most. We envision a world where people get from here to there with ease. By designing better ways to find, reserve and pay for parking, we make your life easier, and your world more connected.
OUR CORE VALUES:
DRIVERS GET THE RIGHT OF WAY: |
DRIVE GROWTH: |
ENJOY THE RIDE: |
|---|---|---|
|
|
|
|
|
We take the Hero in our name seriously, and |
We are committed to growing our people and our business, and we're not afraid to take calculated risks to realize a better future. |
Have some fun, dammit. |


Don’t repeat a mistake a third time.
It’s bad to repeat the same method several times.
To use a method twice is acceptable, but it should not be repeated a third time.
In the process of attacking an enemy, if you fail to succeed the first time, even if you try the same method twice, it will only add to your failure.
If you fail the first time you should try a different method the next time.
If you think of the enemy as a mountain, think of the sea; if you think of the enemy as the sea, think of the mountain.
In other words you should think of an opposite or a completely different method.


Name
HPL_setran Manage the random number generator.
Synopsis
#include "hpl.h"
void
HPL_setran(
const int
OPTION
,
int *
IRAN
);
Description
HPL_setran
initializes the random generator with the encoding of the
first number X(0) in the sequence, and the constants a and c used to
compute the next element in the sequence: X(n+1) = a*X(n) + c. X(0),
a and c are stored in the static variables irand, ias and ics. When
OPTION is 0 (resp. 1 and 2), irand (resp. ia and ic) is set to the
values of the input array IRAN. When OPTION is 3, IRAN is set to the
current value of irand, and irand is then incremented.
Arguments
OPTION (local input) const int
On entry, OPTION is an integer that specifies the operations
to be performed on the random generator as specified above.
IRAN (local input/output) int *
On entry, IRAN is an array of dimension 2, that contains the
16-lower and 15-higher bits of a random number.
See Also
HPL_ladd,
HPL_lmul,
HPL_xjumpm,
HPL_jumpit,
HPL_rand.


Git Control to Major Tom October 4th 2015
Beginning HTML & CSS - The Box Model October 18th 2015
Arrays and Hashes October 25th 2015
The #map enumerable method November 2nd 2015
Ruby Classes - a neighborly touch November 9th 2015
Loop de Loop - comparing simple iterators in Javscript and Ruby November 16th 2015
The Internet & CDN - making that cat meme load faster November 23rd 2015


Demo Speech Enhancement in Hearing Aids
Candy Olivia Mawalim
Japan Advanced Institute of Science and Technology
Sentence:
"but it just grew out of all proportion"
Scene:
S09377 (interferer: microwave noise)
Hearing aid (HA) processor:
E007
Target
Interferer
Mixed (Speech-in-noise)
Listener:
L0221 (female 81 years old)
HA output (after enhancement)
Hearing loss output
Listener:
L0218 (male 74 years old)
HA output (after enhancement)
Hearing loss output


Functions | |
| POSSEMA_t | posSemaCreate (INT_t initcount) |
| void | posSemaDestroy (POSSEMA_t sema) |
| VAR_t | posSemaGet (POSSEMA_t sema) |
| VAR_t | posSemaSignal (POSSEMA_t sema) |
| VAR_t | posSemaWait (POSSEMA_t sema, UINT_t timeoutticks) |
Semaphores are implemented as counters. A task requesting a semaphore (via posSemaGet or posSemaWait) will decrement the counter. If the counter is zero, the task willing to decrement the counter is blocked. When a semaphore is signaled (via posSemaSignal), the counter is incremented. If the counter reaches a positive, nonzero value, the highest priorized task pending on the semaphore is set to running state and can decrement the counter by itself.
|
|
Semaphore function. Allocates a new semaphore object.
|
|
|
Semaphore function. Frees a no more needed semaphore object.
|
|
|
Semaphore function. This function tries to get the semaphore object. If the semaphore is in nonsignalized state (that means its counter is zero or less), this function blocks the task execution until the semaphore gets signaled.
|
|
|
Semaphore function. This function signalizes a semaphore object, that means it increments the semaphore counter and sets tasks pending on the semaphore to running state, when the counter reaches a positive, nonzero value.
|
|
|
Semaphore function. This function tries to get the semaphore object. If the semaphore is in nonsignalized state (that means its counter is zero or less), this function blocks the task execution until the semaphore gets signaled or a timeout happens.
|


Welcome to Vargi bots #0865’s documentation!¶
Introduction:¶
Summary: We are Team VB0865, Chinmay N, Basavasagar K Patil, Avinash Pathy and Abhishek. In the previous tasks i.e., one to four, we worked on ROS manipulation to pick up boxes from shelf and drop it in bins. In this task of Vargi bots, we collected the order through mqqt and placed the pakages on the conveyer belt according to the priority of Medical, Food, Clothes in increasing order. After the packages were placed on the conveyer belt, the corresponding google spreadsheet would be updated and an email of dispatched package would be sent. And the other UR5_Arm would sort the packages according to their color and place them in their respective bin and further update the spreadsheet and send an email of shipment of package.
Video:
Implementation:¶
The task5 of vargi bots includes three main sections, that we divided into to work on simaltaneously and has an distributed workflow, they are as following:
Getting the orders from MQQT : In this section, we use node_online_order_placer.py file from the vb_sim package given by the eyantra team. This node publishes the message file to the topic /eyrc/vb/aBCaRvEc/orders. The corresponding message is subscribed by the nodes in the task5 and thus getting the incoming orders from the MQTT. The subsequent order_id and other parameters related to the order are also pushed on the google spreadsheet.
Priority based pick and place of packages and upadating spreadsheet : In this section, we have implemented priority based picking and placing of objects through the help of an list, which is appended whenever an order is recieved on the IncomingOrders spreadsheet, this list is then sorted lexicographically in decreasing order to have Medicine at the front of the list, whenever it is recieved, Food in the next order and Clothes are served last, according to given priority.
Then the color is decoded using camera and is stored in a global dictionary, which contains the name of the package as key and its color as value. By the use of this dictionary we find the package no. of required package and get the joint angles for picking up the respective packages. An extensive error handling capability has also been included in case if any set joint angles failed, which involves returning to the home pose of the arm and then trying to reach the position from the home pose.
After the package is picked up the next move was to move the package to a position where it can drop the package above the conveyer belt. The joint angles have been manually noted from the rviz and the have been passed to set joint angles value. As soon the package is detached from the ur5_1 arm, we update the google spreadsheet for DispatchedOrders and send an email to the client using an automatic python script and google script editor.
Sorting of the packages and updating the spreadsheet: In this section we sort the incoming packages on the conveyer belt by subscribing to the message sent by the logical camera 2 publisher and based on the color input we get we go to predefined poses, again by using set joint angles function and then detach the package when the arm is positioned above the bin of the color of the package. When the package is detached the corresponding spreadsheet is updated and email is sent to the customer alerting about the shipment of their package. This is done using the google script editor and python script, which automates the entire process.
RQTT Graph:
API Documentation:
API documenation for pkg_task5
- class pkg_sort:
“”” Class to pick the packages from the shelf and place on the conveyer belt “””
- def __init__(self):
“”” Initialization of the class Object “””
- def callback(self,data):
“”” Callback function called by the rospy subscriber to get the color of the box by using cv_bridge to convert ros_image to OpenCv image
- type name
integer matrix
- param name
contains the matrix of the image
“””
- def pkg_color(self,arg_img):
“”” Returns the package color based on the arg_img
- type name
integer matrix
- param name
decodes the image matrix to get the color of the box
“””
- def vacuum_griper(self,state):
“”” Activates the Vaccum Gripper
- type name
string
- param name
the state of the vaccum gripper i.e.. activated or deactivated
“””
- def pkg_pose(self , joint_angles1 , joint_angles2):
“”” fethces the package from the shelf based on the input joint angles
- type name
list for joint_angles1
- param name
contains the joint angles in the form of the list
- type name
list for joint angles2
- param name
contains the joint angles in the form of the list
“””
- def pkg_con_pose(self,con_joint_angles):
“”” Function to make the ur5_1 above the conveyer belt to drop the package
- type name(con_joint_angles)
list
- param name(con_joint_angles)
Contains the joint angles for the arm to go above the conveyer belt
“””
- def set_joint_angles(self, arg_list_joint_angles):
“”” Function to set the joint angles of the arm to the values given as arguments
- type name
list
- param name
the numerical values for the joint angles to be set
“””
- def go_to_predefined_pose(self, arg_pose_name):
“”” Function to move the arm to one of the predifined poses
- type name
string
- param name
position name to which the arm must move to
“””
- def inventory_push():
“”” function to push the data into the inventory sheet “””
- def get_time_str():
“”” function to get the timestamp when the object is picked “””
- def dispatched():
“”” function to update the dispatched google sheet when the package is kept on the conveyer belt “””
- def start(my_msg):
“”” function to start the simulation and updatation of the sheet when the order is recieved
- type name
list
- param name
contains the various parameters regarding the order
“””
- def sheet(res1):
“”” function to update the IncomingOrders sheets based on the orders recieved from mqqt
- type name
list
- param name
contains the item name and order id for the order recieved
“””
- def priority():
“”” function to server query of high priority packages first medium priority second and low priority last when they orders are in a queue to be served “””
- class sort:
“”” This class will sort the packages according to their colour
“””
- def __init__(self):
“”” creates the variables associated with the class
“””
- def __del__(self):
“”” Destructor To be called at the end of the instance
“””
- def go_to_predefined_pose(self, arg_pose_name):
“”” Function to move the arm to one of the predifined poses
- type name
string
- param name
position name to which the arm must move to
“””
- def set_joint_angles(self, arg_list_joint_angles):
“”” Function to set the joint angles of the arm to the values given as arguments
- type name
list
- param name
the numerical values for the joint angles to be set
“””
- def callback(self,msg):
“”” function which is called whenever a mesaage is recieved
:type name : string :param name: message containing the positons of the box under the logical camera
“””
- def get_time_str(self):
“”” Get the timestamp of the time of starting “””
- def belt_stop(self):
“”” Sort the packages based on the color detected by the logical_camera_2
“””
- def pow_belt(self,power):
“”” This function stops the conveyorBelt
- type name
int
- param name
specifies the operating power of the conveyer belt from range 11 to 100
“””
- def vacuum_griper(self,state):
“”” Activates the Vaccum Gripper
- type name
string
- param name
the state of the vaccum gripper i.e.. activated or deactivated
“””
- def func_callback_topic_my_topic(self,myMsg):
“”” Callback function for the subscriber ur5_2
- type name
list
- param name
contains the list of parameters to detect the package with the input coming from the logical_camera_2
“””
- def shipped(self):
“”” Function to send the shipped goods to the Google sheets “””
- def start(my_msg):
“”” Function to get the receive orders from google sheets through message file
- type name
string
- param name
contains the columns of the google sheet of the order recieved
“””
API documentation for pkg_ros_iot_bridge
- class IotRosBridgeActionServer:
“”” Class which acts as bridge between the IoT and ROS “””
- def __init__(self):
“”” Initialization of the Action server “””
- def mqtt_sub_callback(self, client, userdata, message):
“”” Callback function for subscriber to the mqqt
- type name(message)
list
- param name(mesaage)
It contains the information about the request sent
to the mqqt and this message is broadcasted to the subscribers “””
- def on_goal(self, goal_handle):
“”” Function called when the Action server recieves a goal
- type(goal_handle)
Encapsulates a state machine for a given goal that the user can trigger transisions on. All ROS interfaces for the goal are managed by the ActionServer to lessen the burden on the user
“””
- def process_goal(self, goal_handle):
“”” A thread to process the goal recieved by the action server
- type(goal_handle)
Encapsulates a state machine for a given goal that the user can trigger transisions on. All ROS interfaces for the goal are managed by the ActionServer to lessen the burden on the user
“””
- def on_cancel(self, goal_handle):
“”” Function to cancel the execution of the current goal when Cancel is recieved by the Action server
- type(goal_handle)
Encapsulates a state machine for a given goal that the user can trigger transisions on. All ROS interfaces for the goal are managed by the ActionServer to lessen the burden on the user
“””


{% extends "base.html" %} {% block title %}
The full-size photographs are displayed in the browser when the gallery thumbnail or detail view photograph ID link is clicked. Those images may be copied to external media or uploaded to a printing service.
The full-size photographs are located in the album directory in the package folder. The JPEG files may be copied directly from that location or saved directly from the web browser.
Yes but with some caveats. Never ever edit the original scanned images cross my heart, hope to die!. Those are the master copies. Make a copy first and edit that.
Also important. Edit the TIFF files because they do not lose fidelity when editing like JPEG files. Once the photograph has been enhanced, cropped, then convert it to JPEG for printing.
{% endblock content %}


Augmented reality is a technology that is becoming more widely available and on a variety of devices, including smartphones. The technology is now being applied to many new applications. When considering museums, augmented reality seems to provide a solution. Often artefacts in a museum cannot be touched or manipulated and augmented reality can offer this more direct form of manipulation.
In my MSc thesis, it is presented Mobile Egypt, an augmented reality game for smartphones that engages visitors with artefacts in a museum along with two user studies. First, it is performed a guessability study aimed at discovering intuitive gestures with augmented reality on smartphones. Next, the elicited gestures are integrated into the game. Finally, it is performed a qualitative study on the game in a museum setting with volunteers interested in ancient Egypt. The two studies provide a gesture taxonomy for interaction with virtual objects and qualitative validation of the developed application.


Bunyan is a simple and fast a JSON Logger for node.js services (and a bunyan
CLI tool for nicely viewing those logs).
Server logs should be structured. JSON's a good format. Let's do that: a log
record is one line of JSON.stringify
'd output. Let's also specify some common
names for the requisite and common fields for a log record (see below).
Also: log4j is way more than you need.
Basic functionality there. Still a fair amount of planned work, but I'm using it for some production services.
Currently supports node 0.4+, but I'll probably make the jump to node 0.6+ as a base soonish.
Follow @trentmick for updates to Bunyan.
npm install bunyan
The usual. All loggers must provide a "name". This is somewhat akin to log4j logger "name", but Bunyan doesn't do hierarchical logger names.
$ cat hi.js
var Logger = require('bunyan');
var log = new Logger({name: "myapp"});
log.info("hi");
Log records are JSON. "hostname", "time" and "v" (the Bunyan log format version) are added for you.
$ node hi.js
{"name":"myapp","hostname":"banana.local","level":2,"msg":"hi","time":"2012-01-31T00:07:44.216Z","v":0}
The full log.{trace|debug|...|fatal}(...)
API is:
log.info(); // Returns a boolean: is the "info" level enabled?
log.info('hi'); // Log a simple string message.
log.info('hi %s', bob, anotherVar); // Uses `util.format` for msg formatting.
log.info({foo: 'bar'}, 'hi'); // Adds "foo" field to log record.
log.info(err); // Special case to log an `Error` instance, adds "err"
// key with exception details (including the stack) and
// sets "msg" to the exception message.
log.info(err, 'more on this: %s', more);
// ... or you can specify the "msg".
A bunyan
tool is provided for pretty-printing bunyan logs and, eventually,
for filtering (e.g. | bunyan -c 'level>3'
). This shows the default output
(which is fluid right now) and indented-JSON output. More output formats will
be added, including support for custom formats.
$ node hi.js | ./bin/bunyan # CLI tool to filter/pretty-print JSON logs.
[2012-01-31T00:08:11.387Z] INFO: myapp on banana.local: hi
$ node hi.js | ./bin/bunyan -o json
{
"name": "myapp",
"hostname": "banana.local",
"level": 2,
"msg": "hi",
"time": "2012-01-31T00:10:00.676Z",
"v": 0
}
By default, log output is to stdout (stream) and at the "info" level. Explicitly that looks like:
var log = new Logger({name: "myapp", stream: process.stdout,
level: "info"});
That is an abbreviated form for a single stream. You can defined multiple streams at different levels.
var log = new Logger({
name: "amon",
streams: [
{
level: "info",
stream: process.stdout, // log INFO and above to stdout
},
{
level: "error",
path: "tmp/error.log" // log ERROR and above to a file
}
]
});
More on streams in the "Streams" section below.
A log.child(...)
is provided to specialize a logger for a sub-component.
The following will have log records from "Wuzzle" instances use exactly the
same config as its parent, plus include the "component" field.
var log = new Logger(...);
...
function Wuzzle(options) {
this.log = options.log;
this.log.info("creating a wuzzle")
}
Wuzzle.prototype.woos = function () {
this.log.warn("This wuzzle is woosey.")
}
var wuzzle = new Wuzzle({log: log.child({component: "wuzzle"})});
wuzzle.woos();
log.info("done with the wuzzle")
The node-restify
framework integrates bunyan. One feature of its integration, is that each
restify request handler includes a req.log
logger that is:
log.child({req_id: <unique request id>}, true)
Apps using restify can then use req.log
and have all such log records
include the unique request id (as "req_id"). Handy.
Bunyan has a concept of "serializers" to produce a JSON-able object from a JavaScript object, so you can easily do the following:
log.info({req: <request object>}, "something about handling this request");
Association is by log record field name, "req" in this example, so this requires a registered serializer something like this:
function reqSerializer(req) {
return {
method: req.method,
url: req.url,
headers: req.headers
}
}
var log = new Logger({
...
serializers: {
req: reqSerializer
}
});
Or this:
var log = new Logger({
...
serializers: {req: Logger.stdSerializers.req}
});
because Buyan includes a small set of standard serializers. To use all the standard serializers you can use:
var log = new Logger({
...
serializers: Logger.stdSerializers
});
Note: Your own serializers should never throw, otherwise you'll get an ugly message on stderr from Bunyan (along with the traceback) and the field in your log record will be replaced with a short error message.
The source file, line and function of the log call site can be added to
log records by using the src: true
config option:
var log = new Logger({src: true, ...});
This adds the call source info with the 'src' field, like this:
{
"name": "src-example",
"hostname": "banana.local",
"component": "wuzzle",
"level": 4,
"msg": "This wuzzle is woosey.",
"time": "2012-02-06T04:19:35.605Z",
"src": {
"file": "/Users/trentm/tm/node-bunyan/examples/src.js",
"line": 20,
"func": "Wuzzle.woos"
},
"v": 0
}
WARNING: Determining the call source info is slow. Never use this option in production.
The log levels in bunyan are:
General level usage suggestions: "debug" should be used sparingly. Information that will be useful to debug errors post mortem should usually be included in "info" messages if it's generally relevant or else with the corresponding "error" event. Don't rely on spewing mostly irrelevant debug messages all the time and sifting through them when an error occurs.
Integers are used for the actual level values (10 for "trace", ..., 60 for "fatal") and constants are defined for the (Logger.TRACE ... Logger.DEBUG). The lowercase level names are aliases supported in the API.
Here is the API for changing levels in an existing logger:
log.level() -> INFO // gets current level (lowest level of all streams)
log.level(INFO) // set all streams to level INFO
log.level("info") // set all streams to level INFO
log.levels() -> [DEBUG, INFO] // get array of levels of all streams
log.levels(0) -> DEBUG // get level of stream at index 0
log.levels("foo") // get level of stream with name "foo"
log.levels(0, INFO) // set level of stream 0 to INFO
log.levels(0, "info") // can use "info" et al aliases
log.levels("foo", WARN) // set stream named "foo" to WARN
This section will describe rules for the Bunyan log format: field names,
field meanings, required fields, etc. However, a Bunyan library doesn't
strictly enforce all these rules while records are being emitted. For example,
Bunyan will add a time
field with the correct format to your log records,
but you can specify your own. It is the caller's responsibility to specify
the appropriate format.
The reason for the above leniency is because IMO logging a message should
never break your app. This leads to this rule of logging: a thrown
exception from log.info(...)
or equivalent (other than for calling with the
incorrect signature) is always a bug in Bunyan.
A typical Bunyan log record looks like this:
{"name":"myserver","hostname":"banana.local","pid":123,"req":{"method":"GET","url":"/path?q=1#anchor","headers":{"x-hi":"Mom","connection":"close"}},"level":3,"msg":"start request","time":"2012-02-03T19:02:46.178Z","v":0}
Pretty-printed:
{
"name": "myserver",
"hostname": "banana.local",
"pid": 123,
"req": {
"method": "GET",
"url": "/path?q=1#anchor",
"headers": {
"x-hi": "Mom",
"connection": "close"
},
"remoteAddress": "<IP_ADDRESS>",
"remotePort": 51244
},
"level": 3,
"msg": "start request",
"time": "2012-02-03T19:02:57.534Z",
"v": 0
}
Core fields:
v
: Required. Integer. Added by Bunion. Cannot be overriden.
This is the Bunyan log format version (require('bunyan').LOG_VERSION
).
The log version is a single integer. 0
is until I release a version
"1.0.0" of node-bunyan. Thereafter, starting with 1
, this will be
incremented if there is any backward incompatible change to the log record
format. Details will be in "CHANGES.md" (the change log).level
: Required. Integer. Added by Bunion. Cannot be overriden.
See the "Levels" section.name
: Required. String. Provided at Logger creation.
You must specify a name for your logger when creating it. Typically this
is the name of the service/app using Bunyan for logging.hostname
: Required. String. Provided or determined at Logger creation.
You can specify your hostname at Logger creation or it will be retrieved
vi os.hostname()
.pid
: Required. Integer. Filled in automatically at Logger creation.time
: Required. String. Added by Bunion. Can be overriden.
The date and time of the event in ISO 8601
Extended Format format and in UTC,
as from
Date.toISOString()
.msg
: Required. String.
Every log.debug(...)
et al call must provide a log message.src
: Optional. Object giving log call source info. This is added
automatically by Bunyan if the "src: true" config option is given to the
Logger. Never use in production as this is really slow.Go ahead and add more fields, and nest ones are fine (and recommended) as well. This is why we're using JSON. Some suggestions and best practices follow (feedback from actual users welcome).
Recommended/Best Practice Fields:
err
: Object. A caught JS exception. Log that thing with log.info(err)
to get:
...
"err": {
"message": "boom",
"name": "TypeError",
"stack": "TypeError: boom\n at Object.<anonymous> ..."
},
"msg": "boom",
...
Or use the Logger.stdSerializers.err
serializer in your Logger and
do this log.error({err: err}, "oops")
. See "examples/err.js".
req_id
: String. A request identifier. Including this field in all logging
tied to handling a particular request to your server is strongly suggested.
This allows post analysis of logs to easily collate all related logging
for a request. This really shines when you have a SOA with multiple services
and you carry a single request ID from the top API down through all APIs
(as node-restify facilitates
with its 'X-Request-Id' header).
req
: An HTTP server request. Bunyan provides Logger.stdSerializers.req
to serialize a request with a suggested set of keys. Example:
{
"method": "GET",
"url": "/path?q=1#anchor",
"headers": {
"x-hi": "Mom",
"connection": "close"
},
"remoteAddress": "<IP_ADDRESS>",
"remotePort": 51244
}
res
: An HTTP server response. Bunyan provides Logger.stdSerializers.res
to serialize a response with a suggested set of keys. Example:
{
"statusCode": 200,
"header": "HTTP/1.1 200 OK\r\nContent-Type: text/plain\r\nConnection: keep-alive\r\nTransfer-Encoding: chunked\r\n\r\n"
}
Other fields to consider:
req.username
: Authenticated user (or for a 401, the user attempting to
auth).latency
custom field would be fine.req.body
: If you know that request bodies are small (common in APIs,
for example), then logging the request body is good.A "stream" is Bunyan's name for an output for log messages (the equivalent to a log4j Appender). Ultimately Bunyan uses a Writable Stream interface, but there are some additional attributes used to create and manage the stream. A Bunyan Logger instance has one or more streams. In general streams are specified with the "streams" option:
var Logger = require('bunyan');
var log = new Logger({
name: "foo",
streams: [
{
stream: process.stderr,
level: "debug"
},
...
]
})
For convenience, if there is only one stream, it can specified with the
"stream" and "level" options (internal converted to a Logger.streams
):
var log = new Logger({
name: "foo",
stream: process.stderr,
level: "debug"
})
If none are specified, the default is a stream on process.stdout
at the
"info" level.
Logger.streams
is an array of stream objects with the following attributes:
type
: Typically implied. E.g. "stream" or "file". See supported types
below.stream
: This is the "Writable Stream", e.g. a std handle or an open
file write stream.level
: The level at which logging to this stream is enabled. If not
specified it defaults to INFO.Supported stream types are:
stream
: A "stream" argument is given.file
: A "path" argument is given. Bunyan will open this file for
appending. E.g.:
{
"path": "/var/log/foo.log",
"level": "warn"
}
MIT.
See "TODO.md", but basically:
Ring-buffer support for storing last N debug messages (or whatever) in memory to support debugability without too much log load.
More bunyan
output formats and filtering features.
Think about a bunyan dashboard that supports organizing and viewing logs from multiple hosts and services.
Syslog support.
Some speed comparisons with others to get a feel for Bunyan's speed.


Kirchenreich is a mashup using data from Openstreetmap and Wikipedia. The purpose of the site is to correlate informations about places of worship and show problems within the data. We want to encourage users to fix the problems in Wikipedia and Openstreetmap.
Kirche is the German word for church and reich is German for rich or realm. Of course this site not only has churches, but all places of worship.
We developed the initial site for the DjangoDash at one weekend. The whole sourcecode is on Github under BSD licence.
Feel free to fork the repository, file bugrequests or even send in feature wishes.


Home
Browse
About
Currently Viewing: {{filename}}
Naviagation
Page Number
{%for i in range(no_of_pages)%}
{{i+1}}
{%endfor%}
Go
Current Page: {{pageno}} of {{no_of_pages}}
Previous Page
Next Page
Previous Page
Next Page
Back to Gallery


This page allows you to edit options that apply to the entire Syslog-NG
server, such as the handing of hostnames and the behaviour of DNS lookups.
It can also be used to change defaults that apply to all log destinations,
such as the owners and permissions on log files. These however can be overridden
on a per-destination basis.


--- layout: index title: Componets group: navigation2 tagline: A sample page for landing pages and apps, try yourself! tags : [components] img : img-mobile : author : RTPSUG css: js: keywords: components, demo canonical: https://rtpsug.com --- {% include JB/setup %}


Joseph and his mother bought a cake near Sto. Domingo Church. They divided the cake into eight equal parts. They ate 2/8 and brought the rest home.

Fractions with the same denominator are called similar fractions.
Study how you add similar fractions.