text:
package cmd

import (
	"context"
	"errors"
	"fmt"
	"net"
	"net/http"
	"os"
	"strconv"
	"strings"
	"time"

	mocoagent "github.com/cybozu-go/moco-agent"
	"github.com/cybozu-go/moco-agent/cert"
	"github.com/cybozu-go/moco-agent/metrics"
	"github.com/cybozu-go/moco-agent/proto"
	"github.com/cybozu-go/moco-agent/server"
	"github.com/cybozu-go/well"
	"github.com/go-logr/logr"
	"github.com/go-logr/zapr"
	"github.com/go-sql-driver/mysql"
	grpc_middleware "github.com/grpc-ecosystem/go-grpc-middleware"
	grpc_zap "github.com/grpc-ecosystem/go-grpc-middleware/logging/zap"
	grpc_ctxtags "github.com/grpc-ecosystem/go-grpc-middleware/tags"
	grpc_prometheus "github.com/grpc-ecosystem/go-grpc-prometheus"
	"github.com/jmoiron/sqlx"
	"github.com/prometheus/client_golang/prometheus"
	"github.com/prometheus/client_golang/prometheus/promhttp"
	"github.com/robfig/cron/v3"
	"github.com/spf13/cobra"
	"go.uber.org/zap"
	"go.uber.org/zap/zapcore"
	"google.golang.org/grpc"
	"google.golang.org/grpc/credentials"
	"google.golang.org/grpc/keepalive"
	"google.golang.org/grpc/reflection"
)

const (
	grpcDefaultAddr            = ":9080"
	probeDefaultAddr           = ":9081"
	metricsDefaultAddr         = ":8080"
	logRotationScheduleDefault = "*/5 * * * *"
	socketPathDefault          = "/run/mysqld.sock"
)

var config struct {
	address             string
	probeAddress        string
	metricsAddress      string
	connIdleTime        time.Duration
	connectionTimeout   time.Duration
	logRotationSchedule string
	readTimeout         time.Duration
	maxDelayThreshold   time.Duration
	socketPath          string
	grpcCertDir         string
}

type mysqlLogger struct{}

func (l mysqlLogger) Print(v ...interface{}) {}

var grpcMetrics = grpc_prometheus.NewServerMetrics()

var rootCmd = &cobra.Command{
	Use:   "moco-agent",
	Short: "Agent for MySQL instances managed by MOCO",
	Long:  `Agent for MySQL instances managed by MOCO.`,
	RunE: func(cmd *cobra.Command, args []string) error {
		zapLogger, err := zap.NewProduction(zap.AddStacktrace(zapcore.DPanicLevel))
		if err != nil {
			return err
		}
		defer zapLogger.Sync()
		rLogger := zapr.NewLogger(zapLogger)

		// Read required values for agent from ENV
		podName := os.Getenv(mocoagent.PodNameEnvKey)
		if podName == "" {
			return fmt.Errorf("%s is empty", mocoagent.PodNameEnvKey)
		}
		index := -1
		fields := strings.Split(podName, "-")
		index, _ = strconv.Atoi(fields[len(fields)-1])
		agentPassword := os.Getenv(mocoagent.AgentPasswordEnvKey)
		if agentPassword == "" {
			return fmt.Errorf("%s is empty", mocoagent.AgentPasswordEnvKey)
		}
		clusterName := os.Getenv(mocoagent.ClusterNameEnvKey)
		if clusterName == "" {
			return fmt.Errorf("%s is empty", mocoagent.ClusterNameEnvKey)
		}

		ctx := context.Background()
		err = initializeMySQLForMOCO(ctx, config.socketPath, rLogger.WithName("init"))
		if err != nil {
			return err
		}

		conf := server.MySQLAccessorConfig{
			Host:              podName,
			Port:              mocoagent.MySQLAdminPort,
			Password:          agentPassword,
			ConnMaxIdleTime:   config.connIdleTime,
			ConnectionTimeout: config.connectionTimeout,
			ReadTimeout:       config.readTimeout,
		}
		agent, err := server.New(conf, clusterName, config.socketPath, mocoagent.VarLogPath,
			config.maxDelayThreshold, rLogger.WithName("agent"))
		if err != nil {
			return err
		}
		defer agent.CloseDB()

		mysql.SetLogger(mysqlLogger{})

		registry := prometheus.DefaultRegisterer
		metrics.Init(registry, clusterName, index)

		c := cron.New(cron.WithLogger(rLogger.WithName("cron")))
		if _, err := c.AddFunc(config.logRotationSchedule, agent.RotateLog); err != nil {
			rLogger.Error(err, "failed to parse the cron spec", "spec", config.logRotationSchedule)
			return err
		}
		c.Start()
		defer func() {
			ctx := c.Stop()

			select {
			case <-ctx.Done():
			case <-time.After(5 * time.Second):
				rLogger.Info("log rotate job did not finish")
			}
		}()

		reloader, err := cert.NewReloader(config.grpcCertDir, rLogger.WithName("cert-reloader"))
		if err != nil {
			return err
		}

		lis, err := net.Listen("tcp", config.address)
		if err != nil {
			return err
		}

		grpcLogger := zapLogger.Named("grpc")
		grpcServer := grpc.NewServer(
			grpc.Creds(credentials.NewTLS(reloader.TLSServerConfig())),
			grpc.KeepaliveEnforcementPolicy(keepalive.EnforcementPolicy{
				MinTime: 10 * time.Second,
			}),
			grpc.UnaryInterceptor(
				grpc_middleware.ChainUnaryServer(
					grpc_ctxtags.UnaryServerInterceptor(),
					grpcMetrics.UnaryServerInterceptor(),
					grpc_zap.UnaryServerInterceptor(grpcLogger),
				),
			),
		)
		proto.RegisterAgentServer(grpcServer, server.NewAgentService(agent))

		// after all services are registered, initialize metrics.
		grpc_prometheus.Register(grpcServer)

		// enable server reflection service
		// see https://github.com/grpc/grpc-go/blob/master/Documentation/server-reflection-tutorial.md
		reflection.Register(grpcServer)

		well.Go(func(ctx context.Context) error {
			reloader.Run(ctx, 1*time.Hour)
			return nil
		})
		well.Go(func(ctx context.Context) error {
			return grpcServer.Serve(lis)
		})
		well.Go(func(ctx context.Context) error {
			<-ctx.Done()
			grpcServer.GracefulStop()
			return nil
		})

		metricsMux := http.NewServeMux()
		metricsMux.Handle("/metrics", promhttp.Handler())
		metricsServ := &well.HTTPServer{
			Server: &http.Server{
				Addr:    config.metricsAddress,
				Handler: metricsMux,
			},
		}
		err = metricsServ.ListenAndServe()
		if err != nil {
			return err
		}

		probeMux := http.NewServeMux()
		probeMux.HandleFunc("/healthz", agent.MySQLDHealth)
		probeMux.HandleFunc("/readyz", agent.MySQLDReady)
		probeServ := &well.HTTPServer{
			Server: &http.Server{
				Addr:    config.probeAddress,
				Handler: probeMux,
			},
		}
		err = probeServ.ListenAndServe()
		if err != nil {
			return err
		}

		if err := well.Wait(); err != nil && !well.IsSignaled(err) {
			return err
		}

		return nil
	},
}

// Execute executes the root command.
func Execute() {
	if err := rootCmd.Execute(); err != nil {
		fmt.Fprintln(os.Stderr, err.Error())
		os.Exit(1)
	}
}

func init() {
	fs := rootCmd.Flags()
	fs.StringVar(&config.address, "address", grpcDefaultAddr, "Listening address and port for gRPC API.")
	fs.StringVar(&config.probeAddress, "probe-address", probeDefaultAddr, "Listening address and port for mysqld health probes.")
	fs.StringVar(&config.metricsAddress, "metrics-address", metricsDefaultAddr, "Listening address and port for metrics.")
	fs.DurationVar(&config.connIdleTime, "max-idle-time", 30*time.Second, "The maximum amount of time a connection may be idle")
	fs.DurationVar(&config.connectionTimeout, "connection-timeout", 5*time.Second, "Dial timeout")
	fs.StringVar(&config.logRotationSchedule, "log-rotation-schedule", logRotationScheduleDefault, "Cron format schedule for MySQL log rotation")
	fs.DurationVar(&config.readTimeout, "read-timeout", 30*time.Second, "I/O read timeout")
	fs.DurationVar(&config.maxDelayThreshold, "max-delay", time.Minute, "Acceptable max commit delay considering as ready")
	fs.StringVar(&config.socketPath, "socket-path", socketPathDefault, "Path of mysqld socket file.")
	fs.StringVar(&config.grpcCertDir, "grpc-cert-dir", "/grpc-cert", "gRPC certificate directory")
}

func initializeMySQLForMOCO(ctx context.Context, socketPath string, logger logr.Logger) error {
	var db *sqlx.DB
	st := time.Now()
	for {
		if time.Since(st) > 1*time.Minute {
			return errors.New("giving up connecting mysqld")
		}
		var err error
		db, err = server.GetMySQLConnLocalSocket("root", "", socketPath)
		if err == nil {
			break
		}
		if server.IsAccessDenied(err) {
			// There is no passwordless 'root'@'localhost' account.
			// It means the initialization has been completed.
			return nil
		}

		logger.Error(err, "connecting mysqld failed")

		select {
		case <-ctx.Done():
			return ctx.Err()
		case <-time.After(3 * time.Second):
		}
	}

	defer db.Close()

	return server.Init(ctx, db, socketPath)
}

repository: kyontan/moco-agent

repo_name: kyontan/moco-agent


text:
@inproceedings{abaee2010enhancement,
  title={Enhancement of Bug Tracking Tools; the Debugger},
  author={Abaee, Golnoosh and Guru, DS},
  booktitle={Proceedings of the 2nd International Conference on Software Technology and Engineering},
  volume={1},
  pages={V1--165},
  year={2010},
  organization={IEEE}
}
@book{angrist2014mastering,
  title={Mastering'metrics: The path from cause to effect},
  author={Angrist, Joshua D and Pischke, J{\"o}rn-Steffen},
  year={2014},
  publisher={Princeton University Press}
}
@book{angrist2008mostly,
  title={Mostly harmless econometrics: An empiricist's companion},
  author={Angrist, Joshua D and Pischke, J{\"o}rn-Steffen},
  year={2008},
  publisher={Princeton university press}
}
@inproceedings{anvik2005coping,
  title={Coping with an open bug repository},
  author={Anvik, John and Hiew, Lyndon and Murphy, Gail C},
  booktitle={Proceedings of the 2005 OOPSLA workshop on Eclipse technology eXchange},
  pages={35--39},
  year={2005},
  organization={ACM}
}
@inproceedings{Anvika,
author = {Anvik, John and Hiew, Lyndon and Murphy, Gail C},
isbn = {159593085X},
booktitle = {Proceedings of the 28th International Conference on Software Engineering},
pages = {361--370},
title = {{Who Should Fix This Bug?}},
year = {2006},
organization = {IEEE/ACM}
}
@inproceedings{baysal2013situational,
  title={Situational awareness: personalizing issue tracking systems},
  author={Baysal, Olga and Holmes, Reid and Godfrey, Michael W},
  booktitle={Proceedings of the 35th International Conference on Software Engineering},
  pages={1185--1188},
  year={2013},
  organization={IEEE/ACM}
}
@inproceedings{baysal2014no,
  title={No issue left behind: Reducing information overload in issue tracking},
  author={Baysal, Olga and Holmes, Reid and Godfrey, Michael W},
  booktitle={Proceedings of the 22nd International Symposium on Foundations of Software Engineering},
  pages={666--677},
  year={2014},
  organization={ACM}
}
@inproceedings{Bettenburg2008,
  title={Duplicate bug reports considered harmful… really?},
  author={Bettenburg, Nicolas and Premraj, Rahul and Zimmermann, Thomas and Kim, Sunghun},
  booktitle = {Proceedings of the 24th International Conference on Software Maintenance},
  pages={337--345},
  year={2008},
  organization={IEEE}
}

@inproceedings{bissyande2013got,
  title={Got issues? who cares about it? A large scale investigation of issue trackers from GitHub},
  author={Bissyand{\'e}, Tegawend{\'e} F and Lo, David and Jiang, Lingxiao and R{\'e}veillere, Laurent and Klein, Jacques and Le Traon, Yves},
  booktitle={Proceedings of the 24th International Symposium on Software Reliability Engineering},
  pages={188--197},
  year={2013},
  organization={IEEE}
}
@phdthesis{bortis2016porchlight,
  title={PorchLight: A Tag-based Approach to Bug Triaging},
  author={Bortis, Gerald Terry},
  year={2016},
  school={UC Irvine}
}
@inproceedings{breu2010information,
  title={Information needs in bug reports: improving cooperation between developers and users},
  author={Breu, Silvia and Premraj, Rahul and Sillito, Jonathan and Zimmermann, Thomas},
  booktitle={Proceedings of the 2010 Conference on Computer Supported Cooperative Work},
  pages={301--310},
  year={2010},
  organization={ACM}
}
@misc{bugzilla2github,
  title={bugzilla2github},
  author={Berestovsky, Andriy},
  url={https://github.com/berestovskyy/bugzilla2github/}
}
@article{crowston2003social,
  title={The social structure of open source software development teams},
  author={Crowston, Kevin and Howison, James},
  year={2003}
}
@article{da2018impact,
  title={The impact of rapid release cycles on the integration delay of fixed issues},
  author={da Costa, Daniel Alencar and McIntosh, Shane and Treude, Christoph and Kulesza, Uir{\'a} and Hassan, Ahmed E},
  journal={Empirical Software Engineering},
  pages={1--70},
  year={2018},
  publisher={Springer}
}
@inproceedings{davidson2011coping,
  title={Coping with duplicate bug reports in free/open source software projects},
  author={Davidson, Jennifer L and Mohan, Nitin and Jensen, Carlos},
  booktitle={Proceedings of the 2011 Symposium on Visual Languages and Human-Centric Computing},
  pages={101--108},
  year={2011},
  organization={IEEE}
}
@inproceedings{de2009software,
  title={Why are software projects moving from centralized to decentralized version control systems?},
  author={De Alwis, Brian and Sillito, Jonathan},
  booktitle={Proceedings of the 2009 ICSE Workshop on Cooperative and Human Aspects on Software Engineering},
  pages={36--39},
  year={2009},
  organization={IEEE}
}
@inproceedings{francalanci2008empirical,
  title={Empirical analysis of the bug fixing process in open source projects},
  author={Francalanci, Chiara and Merlo, Francesco},
  booktitle={Proceedings of the 4th International Conference on Open Source Systems},
  pages={187--196},
  year={2008},
  organization={IFIP}
}
@article{gelman2018high,
  title={Why high-order polynomials should not be used in regression discontinuity designs},
  author={Gelman, Andrew and Imbens, Guido},
  journal={Journal of Business \& Economic Statistics},
  pages={1--10},
  year={2018},
  publisher={Taylor \& Francis}
}
@manual{github_REST_API,
  title={{GitHub REST API v3, GitHub Developer Guide}},
  url={https://developer.github.com/v3/},
  year={accessed June 26, 2019}
 }
@manual{github_graphql_API,
  title={{GitHub GraphQL API v4, GitHub Developer Guide}},
  url={https://developer.github.com/v4/},
  year={accessed June 26, 2019}
 }
@manual{github_issue_template,
  title={Issue and Pull Request templates},
  author={Bleikamp, Ben},
  year={2016},
  url={https://github.blog/2016-02-17-issue-and-pull-request-templates/},
  note={Last accessed July 25, 2019}
}
@article{hausman2018regression,
  title={Regression discontinuity in time: Considerations for empirical applications},
  author={Hausman, Catherine and Rapson, David S},
  journal={Annual Review of Resource Economics},
  volume={10},
  pages={533--552},
  year={2018},
  publisher={Annual Reviews}
}
@article{jacob2012practical,
  title={A Practical Guide to Regression Discontinuity.},
  author={Jacob, Robin and Zhu, Pei and Somers, Marie-Andr{\'e}e and Bloom, Howard},
  journal={MDRC},
  year={2012},
  publisher={ERIC}
}
@inproceedings{jensen2007role,
  title={{Role migration and advancement processes in OSSD projects: A comparative case study}},
  author={Jensen, Chris and Scacchi, Walt},
  booktitle={Proceedings of the 29th International Conference on Software Engineering},
  pages={364--374},
  year={2007},
  organization={IEEE/ACM}
}
@inproceedings{just2008towards,
  title={Towards the next generation of bug tracking systems},
  author={Just, Sascha and Premraj, Rahul and Zimmermann, Thomas},
  booktitle={Proceedings of the 2008 Symposium on Visual Languages and Human-Centric Computing},
  pages={82--85},
  year={2008},
  organization={IEEE}
}
@article{Kanwal2012,
author = {Kanwal, Jaweria and Maqbool, Onaiza},
doi = {10.1007/s11390-012-1230-3},
journal = {Journal of Computer Science and Technology},
number = {2},
pages = {397--412},
title = {{Bug Prioritization to Facilitate Bug Report Triage}},
volume = {27},
year = {2012}
}
@article{karre2017does,
  title={Does your Bug Tracking tool suit your needs? A Study on Open Source Bug Tracking tools},
  author={Karre, Sai Anirudh and Shukla, Anveshi and Reddy, Y Raghu},
  journal={arXiv preprint arXiv:1706.06799},
  year={2017}
}
@inproceedings{Kikas2015,
author = {Kikas, Riivo and Dumas, Marlon and Pfahl, Dietmar},
doi = {10.1007/978-3-319-26844-6_22},
isbn = {9783319268439},
issn = {16113349},
booktitle = {Proceedings of the 16th International Conference on Product-Focused Software Process Improvement},
pages = {295--310},
title = {{Issue dynamics in GitHub projects}},
year = {2015}
}
@article{lee2010regression,
  title={Regression discontinuity designs in economics},
  author={Lee, David S and Lemieux, Thomas},
  journal={Journal of economic literature},
  volume={48},
  number={2},
  pages={281--355},
  year={2010}
}
@inproceedings{mucslu2014transition,
  title={Transition from centralized to decentralized version control systems: A case study on reasons, barriers, and outcomes},
  author={Mu{\c{s}}lu, K{\i}van{\c{c}} and Bird, Christian and Nagappan, Nachiappan and Czerwonka, Jacek},
  booktitle={Proceedings of the 36th International Conference on Software Engineering},
  pages={334--344},
  year={2014},
  organization={ACM}
}
@inproceedings{nakakoji2002evolution,
  title={Evolution patterns of open-source software systems and communities},
  author={Nakakoji, Kumiyo and Yamamoto, Yasuhiro and Nishinaka, Yoshiyuki and Kishida, Kouichi and Ye, Yunwen},
  booktitle={Proceedings of the International Workshop on Principles of Software Evolution},
  pages={76--85},
  year={2002},
  organization={ACM}
}
@article{raymond1999cathedral,
  title={The cathedral and the bazaar},
  author={Raymond, Eric},
  journal={Knowledge, Technology \& Policy},
  volume={12},
  number={3},
  pages={23--49},
  year={1999},
  publisher={Springer}
}
@inproceedings{robles2009evolution,
  title={Evolution of the core team of developers in libre software projects},
  author={Robles, Gregorio and Gonzalez-Barahona, Jesus M and Herraiz, Israel},
  booktitle={Proceedings of the 6th International Working Conference on Mining Software Repositories},
  year={2009},
  organization={IEEE}
}
@inproceedings{sheoran2014understanding,
  title={Understanding watchers on GitHub},
  author={Sheoran, Jyoti and Blincoe, Kelly and Kalliamvakou, Eirini and Damian, Daniela and Ell, Jordan},
  booktitle={Proceedings of the 11th Working Conference on Mining Software Repositories},
  pages={336--339},
  year={2014},
  organization={ACM}
}
@article{sowe2013multi,
  title={A multi-repository approach to study the topology of open source bugs communities: Implications for software and code quality},
  author={Sowe, Sulayman K and Ghosh, Rishab A and Haaland, Kirsten},
  journal={International Journal of Computer Theory and Engineering},
  volume={5},
  number={1},
  pages={138},
  year={2013},
  publisher={IACSIT Press}
}
@inproceedings{squire2015should,
  title={" Should We Move to Stack Overflow?" Measuring the Utility of Social Media for Developer Support},
  author={Squire, Megan},
  booktitle={Proceedings of the 37th International Conference on Software Engineering},
  volume={2},
  pages={219--228},
  year={2015},
  organization={IEEE/ACM}
}
@article{strate2013literature,
  title={A literature review of research in software defect reporting},
  author={Strate, Jonathan D and Laplante, Phillip A},
  journal={IEEE Transactions on Reliability},
  volume={62},
  number={2},
  pages={444--454},
  year={2013},
  publisher={IEEE}
}
@inproceedings{trockman2018adding,
  title={Adding sparkle to social coding: an empirical study of repository badges in the npm ecosystem},
  author={Trockman, Asher and Zhou, Shurui and K{\"a}stner, Christian and Vasilescu, Bogdan},
  booktitle={Proceedings of the 40th International Conference on Software Engineering},
  pages={511--522},
  year={2018},
  organization={IEEE/ACM}
}
@inproceedings{van2009shallow,
  title={How shallow is a bug? why open source communities shorten the repair time of software defects},
  author={van Liere, Diederik W},
  booktitle={Proceedings of the 30th International Conference on Information Systems},
  pages={195},
  year={2009}
}
@inproceedings{vasilescu2014social,
  title={{How social Q\&A sites are changing knowledge sharing in open source software communities}},
  author={Vasilescu, Bogdan and Serebrenik, Alexander and Devanbu, Prem and Filkov, Vladimir},
  booktitle={Proceedings of the 17th Conference on Computer Supported Cooperative Work \& social computing},
  pages={342--354},
  year={2014},
  organization={ACM}
}
@article{von2003community,
  title={Community, joining, and specialization in open source software innovation: a case study},
  author={Von Krogh, Georg and Spaeth, Sebastian and Lakhani, Karim R},
  journal={Research policy},
  volume={32},
  number={7},
  pages={1217--1241},
  year={2003},
  publisher={Elsevier}
}
@book{wooldridge2015introductory,
  title={Introductory econometrics: A modern approach},
  author={Wooldridge, Jeffrey M},
  year={2015},
  publisher={Nelson Education}
}
@inproceedings{ye2003toward,
  title={Toward an understanding of the motivation Open Source Software developers},
  author={Ye, Yunwen and Kishida, Kouichi},
  booktitle={Proceedings of the 25th International Conference on Software Engineering},
  pages={419--429},
  year={2003},
  organization={IEEE/ACM}
}
@article{zhang2016literature,
  title={A literature review of research in bug resolution: Tasks, challenges and future directions},
  author={Zhang, Tao and Jiang, He and Luo, Xiapu and Chan, Alvin TS},
  journal={The Computer Journal},
  volume={59},
  number={5},
  pages={741--773},
  year={2016},
  publisher={Oxford University Press}
}
@inproceedings{zhao2017impact,
  title={The impact of continuous integration on other software development practices: a large-scale empirical study},
  author={Zhao, Yangyang and Serebrenik, Alexander and Zhou, Yuming and Filkov, Vladimir and Vasilescu, Bogdan},
  booktitle={Proceedings of the 32nd International Conference on Automated Software Engineering},
  pages={60--71},
  year={2017},
  organization={IEEE/ACM}
}

@article{wagner2002segmented,
  title={Segmented regression analysis of interrupted time series studies in medication use research},
  author={Wagner, Anita K and Soumerai, Stephen B and Zhang, Fang and Ross-Degnan, Dennis},
  journal={Journal of clinical pharmacy and therapeutics},
  volume={27},
  number={4},
  pages={299--309},
  year={2002},
  publisher={Wiley Online Library}
}

license: MIT

license_type: permissive

branch_name: refs/heads/master

extension: bib


text:
include_directories(PUBLIC "${PROJECT_DIRECTORY}/3rd-party/argparse/include")
add_subdirectory(${PROJECT_DIRECTORY}/3rd-party/argparse)
set_target_properties(argparse PROPERTIES FOLDER "3rd-party")

repository: MikhailGorobets/DNS

repo_name: MikhailGorobets/DNS

extension: cmake


text:
@inproceedings{zou2019Accelerating,
    author={X. {Zou} and T. {Lu} and W. {Xia} and X. {Wang} and W. {Zhang} and S. {Di} and D. {Tao} and F. {Cappello}},
    booktitle={Proceedings of 35th Symposium on Mass Storage Systems and Technologies (MSST'19)},
    title={Accelerating Relative-error Bounded Lossy Compression for HPC datasets with Precomputation-Based Mechanisms},
    year={2019},
    month=may,
    address = {Santa Clara, CA, USA},
    pages={65-78},
    doi={10.1109/MSST.2019.00-15}
}


text:
package bellman_ford_shortest_paths

import (
	"errors"
	"fmt"
	"math"

	c "github.com/dczombera/data-structures-and-algorithms-in-go/algorithms/graph/single_source_shortest_and_longest_paths_edge_weighted_directed_graph/acyclic_shortest_paths"
	graph "github.com/dczombera/data-structures-and-algorithms-in-go/datastructs/edge_weighted_directed_graph"
	"github.com/dczombera/data-structures-and-algorithms-in-go/datastructs/queue"
)

type BellmanFordSP struct {
	edgeTo  []*graph.DirectedEdge
	distTo  []float64
	onQueue []bool
	queue   queue.Queue
	source  int
	cost    int
	cycle   graph.Stack
}

var infinity = math.Inf(1)

func NewBellmanFordSP(g *graph.EdgeWeightedDigraph, s int) *BellmanFordSP {
	size := g.VerticesCount()
	distTo := make([]float64, size)
	for i := 0; i < size; i++ {
		distTo[i] = infinity
	}
	sp := &BellmanFordSP{make([]*graph.DirectedEdge, size), distTo, make([]bool, size), queue.NewEmptyQueue(), s, 0, graph.Stack{}}
	sp.distTo[s] = 0.0
	sp.queue.Push(s)
	sp.onQueue[s] = true
	for !sp.queue.IsEmpty() && !sp.HasNegativeCycle() {
		v, err := sp.queue.Pop()
		checkError(err)
		sp.onQueue[v] = false
		sp.relax(g, v)
	}
	return sp
}

func (sp *BellmanFordSP) relax(g *graph.EdgeWeightedDigraph, v int) {
	for _, e := range g.AdjacencyList(v) {
		copy := e
		w := e.To
		if sp.distTo[w] > sp.distTo[v]+e.Weight {
			sp.edgeTo[w] = &copy
			sp.distTo[w] = sp.distTo[v] + e.Weight
			if !sp.onQueue[w] {
				sp.queue.Push(w)
				sp.onQueue[w] = true
			}
		}
		sp.cost++
		if sp.cost%g.VerticesCount() == 0 {
			if sp.findNegativeCycle() {
				return
			}
		}
	}
}

func (sp *BellmanFordSP) findNegativeCycle() bool {
	size := len(sp.edgeTo)
	g := graph.NewEdgeWeightedDigraph(size)
	for i := 0; i < size; i++ {
		if sp.edgeTo[i] != nil {
			g.AddEdge(*sp.edgeTo[i])
		}
	}

	cycle := c.NewDirectedEdgeWeightedCycle(g)
	if cycle.HasCycle() {
		sp.cycle = cycle.Cycle()
	}
	return sp.cycle.Size > 0
}

func (sp BellmanFordSP) HasNegativeCycle() bool {
	return sp.cycle.Size > 0
}

func (sp BellmanFordSP) NegativeCycle() graph.Stack {
	return sp.cycle
}

func (sp BellmanFordSP) HasPathTo(v int) bool {
	sp.validateVertex(v)
	return sp.distTo[v] < infinity
}

func (sp BellmanFordSP) PathTo(v int) (graph.Stack, error) {
	sp.validateVertex(v)
	if sp.HasNegativeCycle() {
		return graph.Stack{}, errors.New("No shortest paths found because graph has negative cycle")
	}
	pathStack := graph.Stack{}
	curr := sp.edgeTo[v]
	for ; curr.From != sp.source; curr = sp.edgeTo[curr.From] {
		pathStack.Push(*curr)
	}
	pathStack.Push(*curr)
	return pathStack, nil
}

func (sp BellmanFordSP) DistTo(v int) (float64, error) {
	sp.validateVertex(v)
	if sp.HasNegativeCycle() {
		return infinity, errors.New("No shortest paths found because graph has negative cycle")
	}
	return sp.distTo[v], nil
}

func (sp BellmanFordSP) validateVertex(v int) {
	if v < 0 || v >= len(sp.edgeTo) {
		panic(fmt.Sprintf("Vertex out of bounds"))
	}
}

func checkError(err error) {
	if err != nil {
		panic(err)
	}
}

extension: go


text:
@article{Liu-2021-Phosphorus,
    title = "Phosphorus runoff from Canadian agricultural land: A dataset for 30 experimental fields",
    author = "Liu, Jian  and
      Elliott, Jane A.  and
      Wilson, Henry F.  and
      Macrae, Merrin L.  and
      Baulch, Helen M.  and
      Lobb, David A.",
    journal = "Data in Brief, Volume 38",
    volume = "38",
    year = "2021",
    publisher = "Elsevier BV",
    url = "https://aclanthology.org/G21-3001",
    doi = "10.1016/j.dib.2021.107405",
    pages = "107405",
}

repository: gwf-uwaterloo/gwf-publications

repo_name: gwf-uwaterloo/gwf-publications

branch_name: refs/heads/main

gha_language: Python


text:
@misc{tracker, title={Tracker Video Analysis}, url={https://physlets.org/tracker/}, journal={Tracker Video Analysis and Modeling Tool for Physics Education}, author={Brown, Douglas and Hanson, Robert and Christian, Wolfgang}}
 @misc{python, url={https://www.python.org/}, journal={Python}}
 @misc{scipy, url={https://www.scipy.org/}, journal={SciPy}}
 @misc{matplotlib, url={https://matplotlib.org/}, journal={MatPlotLib}}


text:
@book{Cooper2007en,
author = {Cooper, Alan and Reimann, Robert and Cronin, David},
publisher = {Wiley Publishing Inc., Indianapolis},
title = {{About Face 3}},
year = {2007}
}
@book{Dobelli2013en,
author = {Dobelli, Rolf},
publisher = {Hachette},
title = {The art of thinking clearly: better thinking, better decisions},
year = {2013}
}

repository: thomsmits/markdown-tools

repo_name: thomsmits/markdown-tools

gha_language: JavaScript


text:
@conference{savola2007towards,
  title={{Towards a taxonomy for information security metrics}},
  author={Savola, R.M.},
  booktitle={Proceedings of the 2007 ACM workshop on Quality of protection},
  pages={28--30},
  year={2007},
  organization={ACM New York, NY, USA}
}

@article{noy2001ontology,
  title={{Ontology development 101: A guide to creating your first ontology}},
  author={Noy, N.F. and McGuinness, D.L.},
  journal={Knowledge Systems Laboratory},
  pages={01--05},
  year={2001}
}

@article{todorova2007towards,
  title={{TOWARDS A METHODOLOGY FOR ONTOLOGY DEVELOPMENT}},
  author={Todorova, K.},
  journal={Innovations in E-Learning, Instruction Technology, Assessment and Engineering Education},
  pages={205},
  year={2007},
  publisher={Springer}
}

@article{rajugan2006ontology,
  title={{Ontology views: A theoretical perspective}},
  author={Rajugan, R. and Chang, E. and Dillon, T.S.},
  journal={LECTURE NOTES IN COMPUTER SCIENCE},
  volume={4278},
  pages={1814},
  year={2006},
  publisher={Springer}
}

@article{tsoumas2005ontology,
  title={{An ontology-based approach to information systems security management}},
  author={Tsoumas, B. and Dritsas, S. and Gritzalis, D.},
  journal={Lecture notes in computer science},
  volume={3685},
  pages={151},
  year={2005},
  publisher={Springer}
}

@conference{fenz2009formalizing,
  title={{Formalizing information security knowledge}},
  author={Fenz, S. and Ekelhart, A.},
  booktitle={Proceedings of the 4th International Symposium on Information, Computer, and Communications Security},
  pages={183--194},
  year={2009},
  organization={ACM New York, NY, USA}
}

@article{abel2004ontology,
  title={{Ontology-based Organizational Memory for e-learning}},
  author={Abel, M.H. and Benayache, A. and Lenne, D. and Moulin, C. and Barry, C. and Chaput, B.},
  journal={Educational technology \& society},
  volume={7},
  number={4},
  pages={98--111},
  year={2004}
}

@article{wang-ovm,
  title={{OVM: An Ontology for Vulnerability Management}},
  author={Wang, J.A. and Guo, M.}
}

@article{herzog2009ontology,
  title={{An ontology of information security}},
  author={Herzog, A. and Shahmehri, N. and Duma, C.},
  journal={Techniques and Applications for Advanced Information Privacy and Security: Emerging Organizational, Ethical, and Human Issues},
  pages={278},
  year={2009},
  publisher={Information Science Reference}
}

@conference{raskin2001ontology,
  title={{Ontology in information security: A useful theoretical foundation and methodological tool}},
  author={Raskin, V. and Hempelmann, C.F. and Triezenberg, K.E. and Nirenburg, S.},
  booktitle={Proceedings of the 2001 workshop on New security paradigms},
  pages={53--59},
  year={2001},
  organization={ACM New York, NY, USA}
}

@article{siponen2007review,
  title={{A review of information security issues and respective research contributions}},
  author={Siponen, M.T. and Oinas-Kukkonen, H.},
  journal={ACM SIGMIS Database},
  volume={38},
  number={1},
  pages={60--80},
  year={2007},
  publisher={ACM New York, NY, USA}
}

@article{gruber1995toward,
  title={{Toward principles for the design of ontologies used for knowledge sharing}},
  author={Gruber, T.R.},
  journal={International Journal of Human Computer Studies},
  volume={43},
  number={5},
  pages={907--928},
  year={1995},
  publisher={London; San Diego: Academic Press, c1994-}
}

@article{donner2003toward,
  title={{Toward a security ontology}},
  author={Donner, M.},
  journal={IEEE SECURITY AND PRIVACY MAGAZINE},
  volume={1},
  number={3},
  pages={6--7},
  year={2003},
  publisher={IEEE COMPUTER SOCIETY}
}

@article{york,
  title={{Security Attacks and Intrusion Detection}},
  year={2005},
  publisher={http://www-users.cs.york.ac.uk/~aservin/docs/attacks_ids.pdf}
}

@article{sans,
  title={{Glossary of Terms Used in Security and Intrusion Detection}},
  publisher={http://www.sans.org/security-resources/glossary.php}
}

@article{praxiom,
  title={{Security Management Definitions}},
  publisher={http://www.praxiom.com/iso-27001-definitions.htm}
}

@article{praxiom,
  title={{Security Management Definitions}},
  publisher={http://operationstech.about.com/od/glossary/g/GlsDisastRecovy.htm}
}


text:
require xorg-font-common.inc
PE = "1"

#DESCRIPTION = ""

DEPENDS = "mkfontscale-native"
RDEPENDS = ""

extension: bb


text:
# -*- cmake -*-
# Copyright (C) Dmitry Igrishin
# For conditions of distribution and use, see files LICENSE.txt or pgfe.hpp

# ------------------------------------------------------------------------------
# Client_errc
# ------------------------------------------------------------------------------

set(PGFE_CLIENT_ERRC_SUCCESS                                 0)
set(PGFE_CLIENT_ERRC_INSUFFICIENT_ARRAY_DIMENSIONALITY     100)
set(PGFE_CLIENT_ERRC_EXCESSIVE_ARRAY_DIMENSIONALITY        200)
set(PGFE_CLIENT_ERRC_MALFORMED_ARRAY_LITERAL               300)

# ------------------------------------------------------------------------------
# Server_errc
# ------------------------------------------------------------------------------

#
# Class 00 - Successful Completion
#

# 00000
set(PGFE_SERVER_ERRC_C00_SUCCESSFUL_COMPLETION 0)

#
# Class 01 - Warning
#

# 01000
set(PGFE_SERVER_ERRC_C01_WARNING 46656)

# 0100C
set(PGFE_SERVER_ERRC_C01_DYNAMIC_RESULT_SETS_RETURNED 46668)

# 01008
set(PGFE_SERVER_ERRC_C01_IMPLICIT_ZERO_BIT_PADDING 46664)

# 01003
set(PGFE_SERVER_ERRC_C01_NULL_VALUE_ELIMINATED_IN_SET_FUNCTION 46659)

# 01007
set(PGFE_SERVER_ERRC_C01_PRIVILEGE_NOT_GRANTED 46663)

# 01006
set(PGFE_SERVER_ERRC_C01_PRIVILEGE_NOT_REVOKED 46662)

# 01004
set(PGFE_SERVER_ERRC_C01_STRING_DATA_RIGHT_TRUNCATION 46660)

# 01P01
set(PGFE_SERVER_ERRC_C01_DEPRECATED_FEATURE 79057)

#
# Class 02 - No Data
#

# 02000
set(PGFE_SERVER_ERRC_C02_NO_DATA 93312)

# 02001
set(PGFE_SERVER_ERRC_C02_NO_ADDITIONAL_DYNAMIC_RESULT_SETS_RETURNED 93313)

#
# Class 03 - SQL Statement Not Yet Complete
#

# 03000
set(PGFE_SERVER_ERRC_C03_SQL_STATEMENT_NOT_YET_COMPLETE 139968)

#
# Class 08 - Connection Exception
#

# 08000
set(PGFE_SERVER_ERRC_C08_CONNECTION_EXCEPTION 373248)

# 08003
set(PGFE_SERVER_ERRC_C08_CONNECTION_DOES_NOT_EXIST 373251)

# 08006
set(PGFE_SERVER_ERRC_C08_CONNECTION_FAILURE 373254)

# 08001
set(PGFE_SERVER_ERRC_C08_SQLCLIENT_UNABLE_TO_ESTABLISH_SQLCONNECTION 373249)

# 08004
set(PGFE_SERVER_ERRC_C08_SQLSERVER_REJECTED_ESTABLISHMENT_OF_SQLCONNECTION 373252)

# 08007
set(PGFE_SERVER_ERRC_C08_TRANSACTION_RESOLUTION_UNKNOWN 373255)

# 08P01
set(PGFE_SERVER_ERRC_C08_PROTOCOL_VIOLATION 405649)

#
# Class 09 - Triggered Action Exception
#

# 09000
set(PGFE_SERVER_ERRC_C09_TRIGGERED_ACTION_EXCEPTION 419904)

#
# Class 0A - Feature Not Supported
#

# 0A000
set(PGFE_SERVER_ERRC_C0A_FEATURE_NOT_SUPPORTED 466560)

#
# Class 0B - Invalid Transaction Initiation
#

# 0B000
set(PGFE_SERVER_ERRC_C0B_INVALID_TRANSACTION_INITIATION 513216)

#
# Class 0F - Locator Exception
#

# 0F000
set(PGFE_SERVER_ERRC_C0F_LOCATOR_EXCEPTION 699840)

# 0F001
set(PGFE_SERVER_ERRC_C0F_INVALID_LOCATOR_SPECIFICATION 699841)

#
# Class 0L - Invalid Grantor
#

# 0L000
set(PGFE_SERVER_ERRC_C0L_INVALID_GRANTOR 979776)

# 0LP01
set(PGFE_SERVER_ERRC_C0L_INVALID_GRANT_OPERATION 1012177)

#
# Class 0P - Invalid Role Specification
#

# 0P000
set(PGFE_SERVER_ERRC_C0P_INVALID_ROLE_SPECIFICATION 1166400)

#
# Class 0Z - Diagnostics Exception
#

# 0Z000
set(PGFE_SERVER_ERRC_C0Z_DIAGNOSTICS_EXCEPTION 1632960)

# 0Z002
set(PGFE_SERVER_ERRC_C0Z_STACKED_DIAGNOSTICS_ACCESSED_WITHOUT_ACTIVE_HANDLER 1632962)

#
# Class 20 - Case Not Found
#

# 20000
set(PGFE_SERVER_ERRC_C20_CASE_NOT_FOUND 3359232)

#
# Class 21 - Cardinality Violation
#

# 21000
set(PGFE_SERVER_ERRC_C21_CARDINALITY_VIOLATION 3405888)

#
# Class 22 - Data Exception
#

# 22000
set(PGFE_SERVER_ERRC_C22_DATA_EXCEPTION 3452544)

# 2202E
set(PGFE_SERVER_ERRC_C22_ARRAY_SUBSCRIPT_ERROR 3452630)

# 22021
set(PGFE_SERVER_ERRC_C22_CHARACTER_NOT_IN_REPERTOIRE 3452617)

# 22008
set(PGFE_SERVER_ERRC_C22_DATETIME_FIELD_OVERFLOW 3452552)

# 22012
set(PGFE_SERVER_ERRC_C22_DIVISION_BY_ZERO 3452582)

# 22005
set(PGFE_SERVER_ERRC_C22_ERROR_IN_ASSIGNMENT 3452549)

# 2200B
set(PGFE_SERVER_ERRC_C22_ESCAPE_CHARACTER_CONFLICT 3452555)

# 22022
set(PGFE_SERVER_ERRC_C22_INDICATOR_OVERFLOW 3452618)

# 22015
set(PGFE_SERVER_ERRC_C22_INTERVAL_FIELD_OVERFLOW 3452585)

# 2201E
set(PGFE_SERVER_ERRC_C22_INVALID_ARGUMENT_FOR_LOGARITHM 3452594)

# 22014
set(PGFE_SERVER_ERRC_C22_INVALID_ARGUMENT_FOR_NTILE_FUNCTION 3452584)

# 22016
set(PGFE_SERVER_ERRC_C22_INVALID_ARGUMENT_FOR_NTH_VALUE_FUNCTION 3452586)

# 2201F
set(PGFE_SERVER_ERRC_C22_INVALID_ARGUMENT_FOR_POWER_FUNCTION 3452595)

# 2201G
set(PGFE_SERVER_ERRC_C22_INVALID_ARGUMENT_FOR_WIDTH_BUCKET_FUNCTION 3452596)

# 22018
set(PGFE_SERVER_ERRC_C22_INVALID_CHARACTER_VALUE_FOR_CAST 3452588)

# 22007
set(PGFE_SERVER_ERRC_C22_INVALID_DATETIME_FORMAT 3452551)

# 22019
set(PGFE_SERVER_ERRC_C22_INVALID_ESCAPE_CHARACTER 3452589)

# 2200D
set(PGFE_SERVER_ERRC_C22_INVALID_ESCAPE_OCTET 3452557)

# 22025
set(PGFE_SERVER_ERRC_C22_INVALID_ESCAPE_SEQUENCE 3452621)

# 22P06
set(PGFE_SERVER_ERRC_C22_NONSTANDARD_USE_OF_ESCAPE_CHARACTER 3484950)

# 22010
set(PGFE_SERVER_ERRC_C22_INVALID_INDICATOR_PARAMETER_VALUE 3452580)

# 22023
set(PGFE_SERVER_ERRC_C22_INVALID_PARAMETER_VALUE 3452619)

# 22013
set(PGFE_SERVER_ERRC_C22_INVALID_PRECEDING_FOLLOWING_SIZE 3452583)

# 2201B
set(PGFE_SERVER_ERRC_C22_INVALID_REGULAR_EXPRESSION 3452591)

# 2201W
set(PGFE_SERVER_ERRC_C22_INVALID_ROW_COUNT_IN_LIMIT_CLAUSE 3452612)

# 2201X
set(PGFE_SERVER_ERRC_C22_INVALID_ROW_COUNT_IN_RESULT_OFFSET_CLAUSE 3452613)

# 2202H
set(PGFE_SERVER_ERRC_C22_INVALID_TABLESAMPLE_ARGUMENT 3452633)

# 2202G
set(PGFE_SERVER_ERRC_C22_INVALID_TABLESAMPLE_REPEAT 3452632)

# 22009
set(PGFE_SERVER_ERRC_C22_INVALID_TIME_ZONE_DISPLACEMENT_VALUE 3452553)

# 2200C
set(PGFE_SERVER_ERRC_C22_INVALID_USE_OF_ESCAPE_CHARACTER 3452556)

# 2200G
set(PGFE_SERVER_ERRC_C22_MOST_SPECIFIC_TYPE_MISMATCH 3452560)

# 22004
set(PGFE_SERVER_ERRC_C22_NULL_VALUE_NOT_ALLOWED 3452548)

# 22002
set(PGFE_SERVER_ERRC_C22_NULL_VALUE_NO_INDICATOR_PARAMETER 3452546)

# 22003
set(PGFE_SERVER_ERRC_C22_NUMERIC_VALUE_OUT_OF_RANGE 3452547)

# 2200H
set(PGFE_SERVER_ERRC_C22_SEQUENCE_GENERATOR_LIMIT_EXCEEDED 3452561)

# 22026
set(PGFE_SERVER_ERRC_C22_STRING_DATA_LENGTH_MISMATCH 3452622)

# 22001
set(PGFE_SERVER_ERRC_C22_STRING_DATA_RIGHT_TRUNCATION 3452545)

# 22011
set(PGFE_SERVER_ERRC_C22_SUBSTRING_ERROR 3452581)

# 22027
set(PGFE_SERVER_ERRC_C22_TRIM_ERROR 3452623)

# 22024
set(PGFE_SERVER_ERRC_C22_UNTERMINATED_C_STRING 3452620)

# 2200F
set(PGFE_SERVER_ERRC_C22_ZERO_LENGTH_CHARACTER_STRING 3452559)

# 22P01
set(PGFE_SERVER_ERRC_C22_FLOATING_POINT_EXCEPTION 3484945)

# 22P02
set(PGFE_SERVER_ERRC_C22_INVALID_TEXT_REPRESENTATION 3484946)

# 22P03
set(PGFE_SERVER_ERRC_C22_INVALID_BINARY_REPRESENTATION 3484947)

# 22P04
set(PGFE_SERVER_ERRC_C22_BAD_COPY_FILE_FORMAT 3484948)

# 22P05
set(PGFE_SERVER_ERRC_C22_UNTRANSLATABLE_CHARACTER 3484949)

# 2200L
set(PGFE_SERVER_ERRC_C22_NOT_AN_XML_DOCUMENT 3452565)

# 2200M
set(PGFE_SERVER_ERRC_C22_INVALID_XML_DOCUMENT 3452566)

# 2200N
set(PGFE_SERVER_ERRC_C22_INVALID_XML_CONTENT 3452567)

# 2200S
set(PGFE_SERVER_ERRC_C22_INVALID_XML_COMMENT 3452572)

# 2200T
set(PGFE_SERVER_ERRC_C22_INVALID_XML_PROCESSING_INSTRUCTION 3452573)

#
# Class 23 - Integrity Constraint Violation
#

# 23000
set(PGFE_SERVER_ERRC_C23_INTEGRITY_CONSTRAINT_VIOLATION 3499200)

# 23001
set(PGFE_SERVER_ERRC_C23_RESTRICT_VIOLATION 3499201)

# 23502
set(PGFE_SERVER_ERRC_C23_NOT_NULL_VIOLATION 3505682)

# 23503
set(PGFE_SERVER_ERRC_C23_FOREIGN_KEY_VIOLATION 3505683)

# 23505
set(PGFE_SERVER_ERRC_C23_UNIQUE_VIOLATION 3505685)

# 23514
set(PGFE_SERVER_ERRC_C23_CHECK_VIOLATION 3505720)

# 23P01
set(PGFE_SERVER_ERRC_C23_EXCLUSION_VIOLATION 3531601)

#
# Class 24 - Invalid Cursor State
#

# 24000
set(PGFE_SERVER_ERRC_C24_INVALID_CURSOR_STATE 3545856)

#
# Class 25 - Invalid Transaction State
#

# 25000
set(PGFE_SERVER_ERRC_C25_INVALID_TRANSACTION_STATE 3592512)

# 25001
set(PGFE_SERVER_ERRC_C25_ACTIVE_SQL_TRANSACTION 3592513)

# 25002
set(PGFE_SERVER_ERRC_C25_BRANCH_TRANSACTION_ALREADY_ACTIVE 3592514)

# 25008
set(PGFE_SERVER_ERRC_C25_HELD_CURSOR_REQUIRES_SAME_ISOLATION_LEVEL 3592520)

# 25003
set(PGFE_SERVER_ERRC_C25_INAPPROPRIATE_ACCESS_MODE_FOR_BRANCH_TRANSACTION 3592515)

# 25004
set(PGFE_SERVER_ERRC_C25_INAPPROPRIATE_ISOLATION_LEVEL_FOR_BRANCH_TRANSACTION 3592516)

# 25005
set(PGFE_SERVER_ERRC_C25_NO_ACTIVE_SQL_TRANSACTION_FOR_BRANCH_TRANSACTION 3592517)

# 25006
set(PGFE_SERVER_ERRC_C25_READ_ONLY_SQL_TRANSACTION 3592518)

# 25007
set(PGFE_SERVER_ERRC_C25_SCHEMA_AND_DATA_STATEMENT_MIXING_NOT_SUPPORTED 3592519)

# 25P01
set(PGFE_SERVER_ERRC_C25_NO_ACTIVE_SQL_TRANSACTION 3624913)

# 25P02
set(PGFE_SERVER_ERRC_C25_IN_FAILED_SQL_TRANSACTION 3624914)

# 25P03
set(PGFE_SERVER_ERRC_C25_IDLE_IN_TRANSACTION_SESSION_TIMEOUT 3624915)

#
# Class 26 - Invalid SQL Statement Name
#

# 26000
set(PGFE_SERVER_ERRC_C26_INVALID_SQL_STATEMENT_NAME 3639168)

#
# Class 27 - Triggered Data Change Violation
#

# 27000
set(PGFE_SERVER_ERRC_C27_TRIGGERED_DATA_CHANGE_VIOLATION 3685824)

#
# Class 28 - Invalid Authorization Specification
#

# 28000
set(PGFE_SERVER_ERRC_C28_INVALID_AUTHORIZATION_SPECIFICATION 3732480)

# 28P01
set(PGFE_SERVER_ERRC_C28_INVALID_PASSWORD 3764881)

#
# Class 2B - Dependent Privilege Descriptors Still Exist
#

# 2B000
set(PGFE_SERVER_ERRC_C2B_DEPENDENT_PRIVILEGE_DESCRIPTORS_STILL_EXIST 3872448)

# 2BP01
set(PGFE_SERVER_ERRC_C2B_DEPENDENT_OBJECTS_STILL_EXIST 3904849)

#
# Class 2D - Invalid Transaction Termination
#

# 2D000
set(PGFE_SERVER_ERRC_C2D_INVALID_TRANSACTION_TERMINATION 3965760)

#
# Class 2F - SQL Routine Exception
#

# 2F000
set(PGFE_SERVER_ERRC_C2F_SQL_ROUTINE_EXCEPTION 4059072)

# 2F005
set(PGFE_SERVER_ERRC_C2F_FUNCTION_EXECUTED_NO_RETURN_STATEMENT 4059077)

# 2F002
set(PGFE_SERVER_ERRC_C2F_MODIFYING_SQL_DATA_NOT_PERMITTED 4059074)

# 2F003
set(PGFE_SERVER_ERRC_C2F_PROHIBITED_SQL_STATEMENT_ATTEMPTED 4059075)

# 2F004
set(PGFE_SERVER_ERRC_C2F_READING_SQL_DATA_NOT_PERMITTED 4059076)

#
# Class 34 - Invalid Cursor Name
#

# 34000
set(PGFE_SERVER_ERRC_C34_INVALID_CURSOR_NAME 5225472)

#
# Class 38 - External Routine Exception
#

# 38000
set(PGFE_SERVER_ERRC_C38_EXTERNAL_ROUTINE_EXCEPTION 5412096)

# 38001
set(PGFE_SERVER_ERRC_C38_CONTAINING_SQL_NOT_PERMITTED 5412097)

# 38002
set(PGFE_SERVER_ERRC_C38_MODIFYING_SQL_DATA_NOT_PERMITTED 5412098)

# 38003
set(PGFE_SERVER_ERRC_C38_PROHIBITED_SQL_STATEMENT_ATTEMPTED 5412099)

# 38004
set(PGFE_SERVER_ERRC_C38_READING_SQL_DATA_NOT_PERMITTED 5412100)

#
# Class 39 - External Routine Invocation Exception
#

# 39000
set(PGFE_SERVER_ERRC_C39_EXTERNAL_ROUTINE_INVOCATION_EXCEPTION 5458752)

# 39001
set(PGFE_SERVER_ERRC_C39_INVALID_SQLSTATE_RETURNED 5458753)

# 39004
set(PGFE_SERVER_ERRC_C39_NULL_VALUE_NOT_ALLOWED 5458756)

# 39P01
set(PGFE_SERVER_ERRC_C39_TRIGGER_PROTOCOL_VIOLATED 5491153)

# 39P02
set(PGFE_SERVER_ERRC_C39_SRF_PROTOCOL_VIOLATED 5491154)

# 39P03
set(PGFE_SERVER_ERRC_C39_EVENT_TRIGGER_PROTOCOL_VIOLATED 5491155)

#
# Class 3B - Savepoint Exception
#

# 3B000
set(PGFE_SERVER_ERRC_C3B_SAVEPOINT_EXCEPTION 5552064)

# 3B001
set(PGFE_SERVER_ERRC_C3B_INVALID_SAVEPOINT_SPECIFICATION 5552065)

#
# Class 3D - Invalid Catalog Name
#

# 3D000
set(PGFE_SERVER_ERRC_C3D_INVALID_CATALOG_NAME 5645376)

#
# Class 3F - Invalid Schema Name
#

# 3F000
set(PGFE_SERVER_ERRC_C3F_INVALID_SCHEMA_NAME 5738688)

#
# Class 40 - Transaction Rollback
#

# 40000
set(PGFE_SERVER_ERRC_C40_TRANSACTION_ROLLBACK 6718464)

# 40002
set(PGFE_SERVER_ERRC_C40_TRANSACTION_INTEGRITY_CONSTRAINT_VIOLATION 6718466)

# 40001
set(PGFE_SERVER_ERRC_C40_SERIALIZATION_FAILURE 6718465)

# 40003
set(PGFE_SERVER_ERRC_C40_STATEMENT_COMPLETION_UNKNOWN 6718467)

# 40P01
set(PGFE_SERVER_ERRC_C40_DEADLOCK_DETECTED 6750865)

#
# Class 42 - Syntax Error or Access Rule Violation
#

# 42000
set(PGFE_SERVER_ERRC_C42_SYNTAX_ERROR_OR_ACCESS_RULE_VIOLATION 6811776)

# 42601
set(PGFE_SERVER_ERRC_C42_SYNTAX_ERROR 6819553)

# 42501
set(PGFE_SERVER_ERRC_C42_INSUFFICIENT_PRIVILEGE 6818257)

# 42846
set(PGFE_SERVER_ERRC_C42_CANNOT_COERCE 6822294)

# 42803
set(PGFE_SERVER_ERRC_C42_GROUPING_ERROR 6822147)

# 42P20
set(PGFE_SERVER_ERRC_C42_WINDOWING_ERROR 6844248)

# 42P19
set(PGFE_SERVER_ERRC_C42_INVALID_RECURSION 6844221)

# 42830
set(PGFE_SERVER_ERRC_C42_INVALID_FOREIGN_KEY 6822252)

# 42602
set(PGFE_SERVER_ERRC_C42_INVALID_NAME 6819554)

# 42622
set(PGFE_SERVER_ERRC_C42_NAME_TOO_LONG 6819626)

# 42939
set(PGFE_SERVER_ERRC_C42_RESERVED_NAME 6823557)

# 42804
set(PGFE_SERVER_ERRC_C42_DATATYPE_MISMATCH 6822148)

# 42P18
set(PGFE_SERVER_ERRC_C42_INDETERMINATE_DATATYPE 6844220)

# 42P21
set(PGFE_SERVER_ERRC_C42_COLLATION_MISMATCH 6844249)

# 42P22
set(PGFE_SERVER_ERRC_C42_INDETERMINATE_COLLATION 6844250)

# 42809
set(PGFE_SERVER_ERRC_C42_WRONG_OBJECT_TYPE 6822153)

# 428C9
set(PGFE_SERVER_ERRC_C42_GENERATED_ALWAYS 6822585)

# 42703
set(PGFE_SERVER_ERRC_C42_UNDEFINED_COLUMN 6820851)

# 42883
set(PGFE_SERVER_ERRC_C42_UNDEFINED_FUNCTION 6822435)

# 42P01
set(PGFE_SERVER_ERRC_C42_UNDEFINED_TABLE 6844177)

# 42P02
set(PGFE_SERVER_ERRC_C42_UNDEFINED_PARAMETER 6844178)

# 42704
set(PGFE_SERVER_ERRC_C42_UNDEFINED_OBJECT 6820852)

# 42701
set(PGFE_SERVER_ERRC_C42_DUPLICATE_COLUMN 6820849)

# 42P03
set(PGFE_SERVER_ERRC_C42_DUPLICATE_CURSOR 6844179)

# 42P04
set(PGFE_SERVER_ERRC_C42_DUPLICATE_DATABASE 6844180)

# 42723
set(PGFE_SERVER_ERRC_C42_DUPLICATE_FUNCTION 6820923)

# 42P05
set(PGFE_SERVER_ERRC_C42_DUPLICATE_PREPARED_STATEMENT 6844181)

# 42P06
set(PGFE_SERVER_ERRC_C42_DUPLICATE_SCHEMA 6844182)

# 42P07
set(PGFE_SERVER_ERRC_C42_DUPLICATE_TABLE 6844183)

# 42712
set(PGFE_SERVER_ERRC_C42_DUPLICATE_ALIAS 6820886)

# 42710
set(PGFE_SERVER_ERRC_C42_DUPLICATE_OBJECT 6820884)

# 42702
set(PGFE_SERVER_ERRC_C42_AMBIGUOUS_COLUMN 6820850)

# 42725
set(PGFE_SERVER_ERRC_C42_AMBIGUOUS_FUNCTION 6820925)

# 42P08
set(PGFE_SERVER_ERRC_C42_AMBIGUOUS_PARAMETER 6844184)

# 42P09
set(PGFE_SERVER_ERRC_C42_AMBIGUOUS_ALIAS 6844185)

# 42P10
set(PGFE_SERVER_ERRC_C42_INVALID_COLUMN_REFERENCE 6844212)

# 42611
set(PGFE_SERVER_ERRC_C42_INVALID_COLUMN_DEFINITION 6819589)

# 42P11
set(PGFE_SERVER_ERRC_C42_INVALID_CURSOR_DEFINITION 6844213)

# 42P12
set(PGFE_SERVER_ERRC_C42_INVALID_DATABASE_DEFINITION 6844214)

# 42P13
set(PGFE_SERVER_ERRC_C42_INVALID_FUNCTION_DEFINITION 6844215)

# 42P14
set(PGFE_SERVER_ERRC_C42_INVALID_PREPARED_STATEMENT_DEFINITION 6844216)

# 42P15
set(PGFE_SERVER_ERRC_C42_INVALID_SCHEMA_DEFINITION 6844217)

# 42P16
set(PGFE_SERVER_ERRC_C42_INVALID_TABLE_DEFINITION 6844218)

# 42P17
set(PGFE_SERVER_ERRC_C42_INVALID_OBJECT_DEFINITION 6844219)

#
# Class 44 - With Check Option Violation
#

# 44000
set(PGFE_SERVER_ERRC_C44_WITH_CHECK_OPTION_VIOLATION 6905088)

#
# Class 53 - Insufficient Resources
#

# 53000
set(PGFE_SERVER_ERRC_C53_INSUFFICIENT_RESOURCES 8538048)

# 53100
set(PGFE_SERVER_ERRC_C53_DISK_FULL 8539344)

# 53200
set(PGFE_SERVER_ERRC_C53_OUT_OF_MEMORY 8540640)

# 53300
set(PGFE_SERVER_ERRC_C53_TOO_MANY_CONNECTIONS 8541936)

# 53400
set(PGFE_SERVER_ERRC_C53_CONFIGURATION_LIMIT_EXCEEDED 8543232)

#
# Class 54 - Program Limit Exceeded
#

# 54000
set(PGFE_SERVER_ERRC_C54_PROGRAM_LIMIT_EXCEEDED 8584704)

# 54001
set(PGFE_SERVER_ERRC_C54_STATEMENT_TOO_COMPLEX 8584705)

# 54011
set(PGFE_SERVER_ERRC_C54_TOO_MANY_COLUMNS 8584741)

# 54023
set(PGFE_SERVER_ERRC_C54_TOO_MANY_ARGUMENTS 8584779)

#
# Class 55 - Object Not In Prerequisite State
#

# 55000
set(PGFE_SERVER_ERRC_C55_OBJECT_NOT_IN_PREREQUISITE_STATE 8631360)

# 55006
set(PGFE_SERVER_ERRC_C55_OBJECT_IN_USE 8631366)

# 55P02
set(PGFE_SERVER_ERRC_C55_CANT_CHANGE_RUNTIME_PARAM 8663762)

# 55P03
set(PGFE_SERVER_ERRC_C55_LOCK_NOT_AVAILABLE 8663763)

#
# Class 57 - Operator Intervention
#

# 57000
set(PGFE_SERVER_ERRC_C57_OPERATOR_INTERVENTION 8724672)

# 57014
set(PGFE_SERVER_ERRC_C57_QUERY_CANCELED 8724712)

# 57P01
set(PGFE_SERVER_ERRC_C57_ADMIN_SHUTDOWN 8757073)

# 57P02
set(PGFE_SERVER_ERRC_C57_CRASH_SHUTDOWN 8757074)

# 57P03
set(PGFE_SERVER_ERRC_C57_CANNOT_CONNECT_NOW 8757075)

# 57P04
set(PGFE_SERVER_ERRC_C57_DATABASE_DROPPED 8757076)

#
# Class 58 - System Error
#

# 58000
set(PGFE_SERVER_ERRC_C58_SYSTEM_ERROR 8771328)

# 58030
set(PGFE_SERVER_ERRC_C58_IO_ERROR 8771436)

# 58P01
set(PGFE_SERVER_ERRC_C58_UNDEFINED_FILE 8803729)

# 58P02
set(PGFE_SERVER_ERRC_C58_DUPLICATE_FILE 8803730)

#
# Class 72 - Snapshot Too Old
#

# 72000
set(PGFE_SERVER_ERRC_C72_SNAPSHOT_TOO_OLD 11850624)

#
# Class F0 - Config File Error
#

# F0000
set(PGFE_SERVER_ERRC_CF0_CONFIG_FILE_ERROR 25194240)

# F0001
set(PGFE_SERVER_ERRC_CF0_LOCK_FILE_EXISTS 25194241)

#
# Class HV - Foreign Data Wrapper Error
#

# HV000
set(PGFE_SERVER_ERRC_CHV_FDW_ERROR 29999808)

# HV005
set(PGFE_SERVER_ERRC_CHV_FDW_COLUMN_NAME_NOT_FOUND 29999813)

# HV002
set(PGFE_SERVER_ERRC_CHV_FDW_DYNAMIC_PARAMETER_VALUE_NEEDED 29999810)

# HV010
set(PGFE_SERVER_ERRC_CHV_FDW_FUNCTION_SEQUENCE_ERROR 29999844)

# HV021
set(PGFE_SERVER_ERRC_CHV_FDW_INCONSISTENT_DESCRIPTOR_INFORMATION 29999881)

# HV024
set(PGFE_SERVER_ERRC_CHV_FDW_INVALID_ATTRIBUTE_VALUE 29999884)

# HV007
set(PGFE_SERVER_ERRC_CHV_FDW_INVALID_COLUMN_NAME 29999815)

# HV008
set(PGFE_SERVER_ERRC_CHV_FDW_INVALID_COLUMN_NUMBER 29999816)

# HV004
set(PGFE_SERVER_ERRC_CHV_FDW_INVALID_DATA_TYPE 29999812)

# HV006
set(PGFE_SERVER_ERRC_CHV_FDW_INVALID_DATA_TYPE_DESCRIPTORS 29999814)

# HV091
set(PGFE_SERVER_ERRC_CHV_FDW_INVALID_DESCRIPTOR_FIELD_IDENTIFIER 30000133)

# HV00B
set(PGFE_SERVER_ERRC_CHV_FDW_INVALID_HANDLE 29999819)

# HV00C
set(PGFE_SERVER_ERRC_CHV_FDW_INVALID_OPTION_INDEX 29999820)

# HV00D
set(PGFE_SERVER_ERRC_CHV_FDW_INVALID_OPTION_NAME 29999821)

# HV090
set(PGFE_SERVER_ERRC_CHV_FDW_INVALID_STRING_LENGTH_OR_BUFFER_LENGTH 30000132)

# HV00A
set(PGFE_SERVER_ERRC_CHV_FDW_INVALID_STRING_FORMAT 29999818)

# HV009
set(PGFE_SERVER_ERRC_CHV_FDW_INVALID_USE_OF_NULL_POINTER 29999817)

# HV014
set(PGFE_SERVER_ERRC_CHV_FDW_TOO_MANY_HANDLES 29999848)

# HV001
set(PGFE_SERVER_ERRC_CHV_FDW_OUT_OF_MEMORY 29999809)

# HV00P
set(PGFE_SERVER_ERRC_CHV_FDW_NO_SCHEMAS 29999833)

# HV00J
set(PGFE_SERVER_ERRC_CHV_FDW_OPTION_NAME_NOT_FOUND 29999827)

# HV00K
set(PGFE_SERVER_ERRC_CHV_FDW_REPLY_HANDLE 29999828)

# HV00Q
set(PGFE_SERVER_ERRC_CHV_FDW_SCHEMA_NOT_FOUND 29999834)

# HV00R
set(PGFE_SERVER_ERRC_CHV_FDW_TABLE_NOT_FOUND 29999835)

# HV00L
set(PGFE_SERVER_ERRC_CHV_FDW_UNABLE_TO_CREATE_EXECUTION 29999829)

# HV00M
set(PGFE_SERVER_ERRC_CHV_FDW_UNABLE_TO_CREATE_REPLY 29999830)

# HV00N
set(PGFE_SERVER_ERRC_CHV_FDW_UNABLE_TO_ESTABLISH_CONNECTION 29999831)

#
# Class P0 - PL/pgSQL Error
#

# P0000
set(PGFE_SERVER_ERRC_CP0_PLPGSQL_ERROR 41990400)

# P0001
set(PGFE_SERVER_ERRC_CP0_RAISE_EXCEPTION 41990401)

# P0002
set(PGFE_SERVER_ERRC_CP0_NO_DATA_FOUND 41990402)

# P0003
set(PGFE_SERVER_ERRC_CP0_TOO_MANY_ROWS 41990403)

# P0004
set(PGFE_SERVER_ERRC_CP0_ASSERT_FAILURE 41990404)

#
# Class XX - Internal Error
#

# XX000
set(PGFE_SERVER_ERRC_CXX_INTERNAL_ERROR 56966976)

# XX001
set(PGFE_SERVER_ERRC_CXX_DATA_CORRUPTED 56966977)

# XX002
set(PGFE_SERVER_ERRC_CXX_INDEX_CORRUPTED 56966978)

license: Zlib

repository: SeppPenner/pgfe

repo_name: SeppPenner/pgfe


text:
# generated from
# ament_cmake_core/cmake/uninstall_target/ament_cmake_uninstall_target.cmake.in

function(ament_cmake_uninstall_target_remove_empty_directories path)
  set(install_space "@CMAKE_INSTALL_PREFIX@")
  if(install_space STREQUAL "")
    message(FATAL_ERROR "The CMAKE_INSTALL_PREFIX variable must not be empty")
  endif()

  string(LENGTH "${install_space}" length)
  string(SUBSTRING "${path}" 0 ${length} path_prefix)
  if(NOT path_prefix STREQUAL install_space)
    message(FATAL_ERROR "The path '${path}' must be within the install space '${install_space}'")
  endif()
  if(path STREQUAL install_space)
    return()
  endif()

  # check if directory is empty
  file(GLOB files "${path}/*")
  list(LENGTH files length)
  if(length EQUAL 0)
    message(STATUS "Uninstalling: ${path}/")
    execute_process(COMMAND "@CMAKE_COMMAND@" "-E" "remove_directory" "${path}")
    # recursively try to remove parent directories
    get_filename_component(parent_path "${path}" PATH)
    ament_cmake_uninstall_target_remove_empty_directories("${parent_path}")
  endif()
endfunction()

# uninstall files installed using the standard install() function
set(install_manifest "@CMAKE_BINARY_DIR@/install_manifest.txt")
if(NOT EXISTS "${install_manifest}")
  message(FATAL_ERROR "Cannot find install manifest: ${install_manifest}")
endif()

file(READ "${install_manifest}" installed_files)
string(REGEX REPLACE "\n" ";" installed_files "${installed_files}")
foreach(installed_file ${installed_files})
  if(EXISTS "${installed_file}" OR IS_SYMLINK "${installed_file}")
    message(STATUS "Uninstalling: ${installed_file}")
    file(REMOVE "${installed_file}")
    if(EXISTS "${installed_file}" OR IS_SYMLINK "${installed_file}")
      message(FATAL_ERROR "Failed to remove '${installed_file}'")
    endif()

    # remove empty parent folders
    get_filename_component(parent_path "${installed_file}" PATH)
    ament_cmake_uninstall_target_remove_empty_directories("${parent_path}")
  endif()
endforeach()

# end of template

message(STATUS "Execute custom uninstall script")

# begin of custom uninstall code

branch_name: refs/heads/rolling

gha_language: CMake

extension: in


text:
SUMMARY = "Easy progress reporting for Python"
HOMEPAGE = "http://github.com/verigak/progress/"
LICENSE = "ISC"
LIC_FILES_CHKSUM = "file://LICENSE;md5=aef5566ac4fede9815eccf124c281317"

SRC_URI[md5sum] = "408df0e3db0ad4b74f19f6beec814ae4"
SRC_URI[sha256sum] = "69ecedd1d1bbe71bf6313d88d1e6c4d2957b7f1d4f71312c211257f7dae64372"

inherit pypi setuptools

RDEPENDS:${PN}:class-target += " \
    ${PYTHON_PN}-datetime \
    ${PYTHON_PN}-math \
"

BBCLASSEXTEND = "native nativesdk"

SKIP_RECIPE[python-progress] ?= "${@bb.utils.contains('I_SWEAR_TO_MIGRATE_TO_PYTHON3', 'yes', '', 'python2 is out of support for long time, read https://www.python.org/doc/sunset-python-2/ https://python3statement.org/ and if you really have to temporarily use this, then set I_SWEAR_TO_MIGRATE_TO_PYTHON3 to "yes"', d)}"

branch_name: refs/heads/jansa/master

gha_license_id: MIT

gha_language: BitBake


text:
SUMMARY = "TI Big data IPC: Host linux examples"

require recipes-ti/includes/ti-paths.inc
require big-data-ipc-demo.inc

inherit features_check

REQUIRED_MACHINE_FEATURES = "dsp"

DEPENDS = "ti-ipc \
           ti-xdctools-native \
           ti-sysbios \
           ti-ipc-rtos \
           cmem \
           ti-cgt6x-native \
"

EXTRA_OEMAKE = "\
    PLATFORM=${PLATFORM} \
    XDC_INSTALL_DIR="${XDC_INSTALL_DIR}" \
    BIOS_INSTALL_DIR="${SYSBIOS_INSTALL_DIR}" \
    IPC_INSTALL_DIR="${IPC_INSTALL_DIR}" \
    LINUX_SYSROOT_DIR="${STAGING_INCDIR}" \
    ${IPC_TARGETS} \
    JOBS="${PARALLEL_MAKE}" \
"

do_create_srcipk_prepend() {
  rm -rf host_bios
}

do_compile() {
  if [  "${PLATFORM}" != "UNKNOWN" ]; then
      oe_runmake host_linux
  fi
}

do_install() {
  if [  "${PLATFORM}" != "UNKNOWN" ]; then
    oe_runmake EXEC_DIR="${D}${bindir}" install_linux_bin
  fi
}

PACKAGES =+ "${PN}-firmware"
FILES_${PN}-firmware += "${bindir}/simple_buffer_example/release/server_dsp.xe66"
INSANE_SKIP_${PN}-firmware += "arch"


text:
@proceedings{ws-2015-asian,
    title = "Proceedings of the 2nd Workshop on {A}sian Translation ({WAT}2015)",
    editor = "Nakazawa, Toshiaki  and
      Mino, Hideya  and
      Goto, Isao  and
      Neubig, Graham  and
      Kurohashi, Sadao  and
      Sumita, Eiichiro",
    month = oct,
    year = "2015",
    address = "Kyoto, Japan",
    publisher = "Workshop on Asian Translation",
}
@inproceedings{nakazawa-etal-2015-overview,
    title = "Overview of the 2nd Workshop on {A}sian Translation",
    author = "Nakazawa, Toshiaki  and
      Mino, Hideya  and
      Goto, Isao  and
      Neubig, Graham  and
      Kurohashi, Sadao  and
      Sumita, Eiichiro",
    booktitle = "Proceedings of the 2nd Workshop on {A}sian Translation ({WAT}2015)",
    month = oct,
    year = "2015",
    address = "Kyoto, Japan",
    publisher = "Workshop on Asian Translation",
    url = "https://www.aclweb.org/anthology/W15-5001",
    pages = "1--28",
}
@inproceedings{ehara-2015-system,
    title = "System Combination of {RBMT} plus {SPE} and Preordering plus {SMT}",
    author = "Ehara, Terumasa",
    booktitle = "Proceedings of the 2nd Workshop on {A}sian Translation ({WAT}2015)",
    month = oct,
    year = "2015",
    address = "Kyoto, Japan",
    publisher = "Workshop on Asian Translation",
    url = "https://www.aclweb.org/anthology/W15-5002",
    pages = "29--34",
}
@inproceedings{neubig-etal-2015-neural,
    title = "Neural Reranking Improves Subjective Quality of Machine Translation: {NAIST} at {WAT}2015",
    author = "Neubig, Graham  and
      Morishita, Makoto  and
      Nakamura, Satoshi",
    booktitle = "Proceedings of the 2nd Workshop on {A}sian Translation ({WAT}2015)",
    month = oct,
    year = "2015",
    address = "Kyoto, Japan",
    publisher = "Workshop on Asian Translation",
    url = "https://www.aclweb.org/anthology/W15-5003",
    pages = "35--41",
}
@inproceedings{ding-etal-2015-nict,
    title = "NICT at WAT 2015",
    author = "Ding, Chenchen  and
      Utiyama, Masao  and
      Sumita, Eiichiro",
    booktitle = "Proceedings of the 2nd Workshop on {A}sian Translation ({WAT}2015)",
    month = oct,
    year = "2015",
    address = "Kyoto, Japan",
    publisher = "Workshop on Asian Translation",
    url = "https://www.aclweb.org/anthology/W15-5004",
    pages = "42--47",
}
@inproceedings{sonoh-kinoshita-2015-toshiba,
    title = "Toshiba {MT} System Description for the {WAT}2015 Workshop",
    author = "Sonoh, Satoshi  and
      Kinoshita, Satoshi",
    booktitle = "Proceedings of the 2nd Workshop on {A}sian Translation ({WAT}2015)",
    month = oct,
    year = "2015",
    address = "Kyoto, Japan",
    publisher = "Workshop on Asian Translation",
    url = "https://www.aclweb.org/anthology/W15-5005",
    pages = "48--53",
}
@inproceedings{richardson-etal-2015-kyotoebmt,
    title = "{K}yoto{EBMT} System Description for the 2nd Workshop on {A}sian Translation",
    author = "Richardson, John  and
      Dabre, Raj  and
      Chu, Chenhui  and
      Cromi{\`e}res, Fabien  and
      Nakazawa, Toshiaki  and
      Kurohashi, Sadao",
    booktitle = "Proceedings of the 2nd Workshop on {A}sian Translation ({WAT}2015)",
    month = oct,
    year = "2015",
    address = "Kyoto, Japan",
    publisher = "Workshop on Asian Translation",
    url = "https://www.aclweb.org/anthology/W15-5006",
    pages = "54--60",
}
@inproceedings{zhu-2015-evaluating,
    title = "Evaluating Neural Machine Translation in {E}nglish-{J}apanese Task",
    author = "Zhu, Zhongyuan",
    booktitle = "Proceedings of the 2nd Workshop on {A}sian Translation ({WAT}2015)",
    month = oct,
    year = "2015",
    address = "Kyoto, Japan",
    publisher = "Workshop on Asian Translation",
    url = "https://www.aclweb.org/anthology/W15-5007",
    pages = "61--68",
}
@inproceedings{lee-etal-2015-naver,
    title = "{NAVER} Machine Translation System for {WAT} 2015",
    author = "Lee, Hyoung-Gyu  and
      Lee, JaeSong  and
      Kim, Jun-Seok  and
      Lee, Chang-Ki",
    booktitle = "Proceedings of the 2nd Workshop on {A}sian Translation ({WAT}2015)",
    month = oct,
    year = "2015",
    address = "Kyoto, Japan",
    publisher = "Workshop on Asian Translation",
    url = "https://www.aclweb.org/anthology/W15-5008",
    pages = "69--73",
}
@inproceedings{tan-etal-2015-awkward,
    title = "An Awkward Disparity between {BLEU} / {RIBES} Scores and Human Judgements in Machine Translation",
    author = "Tan, Liling  and
      Dehdari, Jon  and
      van Genabith, Josef",
    booktitle = "Proceedings of the 2nd Workshop on {A}sian Translation ({WAT}2015)",
    month = oct,
    year = "2015",
    address = "Kyoto, Japan",
    publisher = "Workshop on Asian Translation",
    url = "https://www.aclweb.org/anthology/W15-5009",
    pages = "74--81",
}
@inproceedings{shan-etal-2015-dependency,
    title = "A Dependency-to-String Model for {C}hinese-{J}apanese {SMT} System",
    author = "Shan, Hua  and
      Zhang, Yujie  and
      Bai, Lu  and
      Luo, Te",
    booktitle = "Proceedings of the 2nd Workshop on {A}sian Translation ({WAT}2015)",
    month = oct,
    year = "2015",
    address = "Kyoto, Japan",
    publisher = "Workshop on Asian Translation",
    url = "https://www.aclweb.org/anthology/W15-5010",
    pages = "82--86",
}
@inproceedings{yang-etal-2015-sampling,
    title = "Sampling-based Alignment and Hierarchical Sub-sentential Alignment in {C}hinese{--}{J}apanese Translation of Patents",
    author = "Yang, Wei  and
      Zhao, Zhongwen  and
      Yang, Baosong  and
      Lepage, Yves",
    booktitle = "Proceedings of the 2nd Workshop on {A}sian Translation ({WAT}2015)",
    month = oct,
    year = "2015",
    address = "Kyoto, Japan",
    publisher = "Workshop on Asian Translation",
    url = "https://www.aclweb.org/anthology/W15-5011",
    pages = "87--94",
}
@inproceedings{sudoh-nagata-2015-chinese,
    title = "{C}hinese-to-{J}apanese Patent Machine Translation based on Syntactic Pre-ordering for{WAT} 2015",
    author = "Sudoh, Katsuhito  and
      Nagata, Masaaki",
    booktitle = "Proceedings of the 2nd Workshop on {A}sian Translation ({WAT}2015)",
    month = oct,
    year = "2015",
    address = "Kyoto, Japan",
    publisher = "Workshop on Asian Translation",
    url = "https://www.aclweb.org/anthology/W15-5012",
    pages = "95--98",
}
@inproceedings{matsuo-etal-2015-source,
    title = "Source Phrase Segmentation and Translation for {J}apanese-{E}nglish Translation Using Dependency Structure",
    author = "Matsuo, Junki  and
      Ohwada, Kenichi  and
      Komachi, Mamoru",
    booktitle = "Proceedings of the 2nd Workshop on {A}sian Translation ({WAT}2015)",
    month = oct,
    year = "2015",
    address = "Kyoto, Japan",
    publisher = "Workshop on Asian Translation",
    url = "https://www.aclweb.org/anthology/W15-5013",
    pages = "99--104",
}

repository: emorynlp/nlprankings

repo_name: emorynlp/nlprankings

gha_license_id: NOASSERTION

gha_language: TeX


text:
package clock

import (
	"crypto/rand"
	"encoding/binary"
	"time"
)

type Clock struct {
	offset time.Duration
}

func NewByRemote(ts int64) *Clock {
	now := time.Now().Unix()
	return &Clock{offset: time.Duration(ts-now) * time.Second}
}

func New() *Clock {
	data := make([]byte, 2)
	rand.Read(data)
	offset := binary.BigEndian.Uint16(data)
	return &Clock{offset: time.Duration(offset) * time.Second}
}

func (c *Clock) Now() time.Time {
	return time.Now().Add(time.Duration(c.offset))
}

func (c *Clock) Unix() int64 {
	return c.Now().Unix()
}

repository: chzyer/next

repo_name: chzyer/next


text:
var ThreatExchange = require('./lib/threatexchange');
exports.createThreatExchange = function createThreatExchange(app_id,app_secret) {
  return ThreatExchange(app_id,app_secret);
}

repository: AakashOfficial/ThreatExchange

repo_name: AakashOfficial/ThreatExchange

extension: js


text:
#
# UseDebugSymbols.cmake
#
# Copyright (c) 2019 - 2022 Marius Zwicker
# All rights reserved.
#
# SPDX-License-Identifier: Apache-2.0
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#

# - Generate debug symbols in a separate file
#
# (1) Include this file in your CMakeLists.txt; it will setup everything
#     to compile WITH debug symbols in any case.
#
# (2) Run the strip_debug_symbols function on every target that you want
#     to strip.

# only debugging using the GNU toolchain is supported for now
if(MZ_IS_GCC)
  # extracting the debug info is done by a separate utility in the GNU
  # toolchain. check that this is actually installed.
  if(MZ_MACOS OR MZ_IOS)
    # MacOS X has a duo of utilities; we need both
    message(STATUS "Looking for strip utility")
    find_host_program(DSYMUTIL dsymutil)
    mark_as_advanced(DSYMUTIL)
    if(DSYMUTIL)
      message(STATUS "Looking for dsymutil - found")
    else()
      message(WARNING "Looking for dsymutil - not found")
    endif()
    find_host_program(STRIP strip)
    mark_as_advanced(STRIP)
    if(NOT DSYMUTIL)
      set(STRIP strip-NOTFOUND)
    endif()
    if(STRIP)
        message(STATUS "Looking for strip - found")
    else()
        message(WARNING "Looking for strip - not found")
    endif()
  else()
    find_program(OBJCOPY objcopy)
    mark_as_advanced(OBJCOPY)
    if(OBJCOPY)
        message(STATUS "Looking for objcopy - found")
    else()
        message(WARNING "Looking for objcopy - not found")
    endif()
    find_program(STRIP strip)
    mark_as_advanced(STRIP)
    if(NOT OBJCOPY)
      set(STRIP strip-NOTFOUND)
    endif()
    if(STRIP)
        message(STATUS "Looking for strip - found")
    else()
        message(WARNING "Looking for strip - not found")
    endif()
  endif()
endif ()

# command to separate the debug information from the executable into
# its own file; this must be called for each target; optionally takes
# the name of a variable to receive the list of .debug files
function(strip_debug_symbols targets)
  if(MZ_IS_GCC AND STRIP)
    foreach(target IN LISTS targets)
      # libraries must retain the symbols in order to link to them, but
      # everything can be stripped in an executable
      get_target_property(MZ_KIND ${target} TYPE)

      # don't strip static libraries
      if("${MZ_KIND}" STREQUAL "STATIC_LIBRARY")
        return ()
      endif ()

      if(MZ_MACOS OR MZ_IOS)
        get_target_property(MZ_IS_BUNDLE ${target} MACOSX_BUNDLE_INFO_PLIST )
        get_target_property(MZ_IS_FRAMEWORK ${target} FRAMEWORK )
        if( MZ_IS_FRAMEWORK OR MZ_IS_BUNDLE )
          add_custom_command(TARGET ${target}
            POST_BUILD
            WORKING_DIRECTORY ${EXECUTABLE_OUTPUT_PATH}
            COMMAND ${DSYMUTIL} ARGS --out=$<TARGET_BUNDLE_DIR:${target}>.dSYM $<TARGET_FILE:${target}>
            COMMAND ${STRIP} ARGS -S $<TARGET_FILE:${target}>
            VERBATIM
          )
        else()
          add_custom_command(TARGET ${target}
            POST_BUILD
            WORKING_DIRECTORY ${EXECUTABLE_OUTPUT_PATH}
            COMMAND ${DSYMUTIL} ARGS --out=${EXECUTABLE_OUTPUT_PATH}/$<TARGET_FILE_NAME:${target}>.dSYM $<TARGET_FILE:${target}>
            COMMAND ${STRIP} ARGS -S $<TARGET_FILE:${target}>
            VERBATIM
          )
        endif()
      else()
          add_custom_command (TARGET ${target}
            POST_BUILD
            WORKING_DIRECTORY ${EXECUTABLE_OUTPUT_PATH}
            COMMAND ${OBJCOPY} ARGS --only-keep-debug $<TARGET_FILE:${target}> ${EXECUTABLE_OUTPUT_PATH}/$<TARGET_FILE_NAME:${target}>.debug
            COMMAND ${STRIP} ARGS --strip-debug --strip-unneeded $<TARGET_FILE:${target}>
            COMMAND ${OBJCOPY} ARGS --add-gnu-debuglink=${EXECUTABLE_OUTPUT_PATH}/$<TARGET_FILE_NAME:${target}>.debug $<TARGET_FILE:${target}>
            VERBATIM
          )
      endif()
    endforeach()
  endif()
endfunction()

repository: mlba-team/mz-cmaketools

repo_name: mlba-team/mz-cmaketools


text:
@article{hiptmair2007nodal,
  title={Nodal auxiliary space preconditioning in {$H$(curl) and $H$(div)} spaces},
  author={R.~Hiptmair and J.~Xu},
  journal=SINUM,
  volume={45},
  number={6},
  pages={2483--2509},
  year={2007},
  publisher={SIAM}
}

@inproceedings{wang2011efficient,
  title={Efficient parallel algorithms for Hierarchically SemiSeparable ({HSS}) matrices: kernel of a massively parallel structured direct {H}elmholtz solver},
  author={S.~Wang and J.~Xia and Y.~Situ and H.~V.~de Hoop and X.~Li},
  booktitle={2011 SEG Annual Meeting},
  year={2011},
  organization={Society of Exploration Geophysicists}
}

repository: wathen/UBC

repo_name: wathen/UBC


text:
PR = "r10"

# major version number
PVM = "4.3"

require db4.inc

SRC_URI += "file://arm-thumb-mutex.patch;patch=1"

#configuration - set in local.conf to override
# All the --disable-* options replace --enable-smallbuild, which breaks a bunch of stuff (eg. postfix)
DB4_CONFIG ?= "--enable-o_direct --disable-cryptography --disable-queue --disable-replication --disable-statistics --disable-verify --enable-compat185"


text:
// Copyright (c) 2017. Marcus Brummer.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//    http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

package main

import (
	"os"
)

func ConvertFile(f os.FileInfo) FileDTO {
	filetype := GetFileType(f)

	return FileDTO{f.Name(), f.Size(), filetype}
}

func ConvertFiles(files []os.FileInfo) []FileDTO {
	dtos := make([]FileDTO, len(files))
	for i, file := range files {
		dtos[i] = ConvertFile(file)
	}

	return dtos
}

repository: anatolieGhebea/fileport

repo_name: anatolieGhebea/fileport


text:
# Copyright (C) 2015 GENIVI Alliance
# Released under the MIT license (see COPYING.MIT for the terms)

SUMMARY = "Script to exercise the GDP HMI by clicking on buttons"
RDEPENDS_${PN} = "python-uinput"
FILESEXTRAPATHS_append := "${THISDIR}"

LICENSE = "MPL-2.0"
LIC_FILES_CHKSUM = "file://gdp-hmi-mouse-test.py;md5=1d78d1640a1af932fd3b774b93be0ee6"

SRC_URI = "file://gdp-hmi-mouse-test.py"

S = "${WORKDIR}"

do_install() {
    install -d ${D}${bindir}
    install -m 0555 ${WORKDIR}/gdp-hmi-mouse-test.py ${D}${bindir}
}

repository: GENIVI/genivi-dev-platform

repo_name: GENIVI/genivi-dev-platform

gha_language: Shell


text:
SUMMARY = ""date.h" is a header-only library which builds upon <chrono>. It adds some new duration types, and new time_point types."
HOMEPAGE = "https://github.com/HowardHinnant/date"
SECTION = "libs"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=b5d973344b3c7bbf7535f0e6e002d017"

SRC_URI = "https://github.com/HowardHinnant/date/archive/v${PV}.tar.gz"

SRC_URI[md5sum] = "54d9dd9d5ac32214d3cbe8cc80bbccf2"
SRC_URI[sha256sum] = "98907d243397483bd7ad889bf6c66746db0d7d2a39cc9aacc041834c40b65b98"

inherit cmake

EXTRA_OECMAKE += "-DCMAKE_CXX_STANDARD=14"

S = "${WORKDIR}/date-${PV}"

FILES_${PN}-dev += "${libdir}/cmake"

repository: opendreambox/opendreambox

repo_name: opendreambox/opendreambox

branch_name: refs/heads/pyro


text:
DESCRIPTION = "OMAP ISP Live Tool"
HOMEPAGE = "git.ideasonboard.org/omap3-isp-live.git"
SECTION = "devel"
PRIORITY = "optional"
LICENSE = "GPLv2"

SRC_URI = "git://git.ideasonboard.org/omap3-isp-live.git;branch=master"
SRCREV = "cbd64859e6c1509b0f2ee7728cb66b120d52c45e"

LIC_FILES_CHKSUM = "file://LICENSE;md5=eb723b61539feef013de476e68b5c50a"

S = "${WORKDIR}/git"

EXTRA_OEMAKE = "'CC=${CC}' 'KDIR=${STAGING_KERNEL_DIR}'"

do_install() {
        install -d ${D}${bindir}
	install -d ${D}${libdir}
	install -m 755 ${S}/live ${D}${bindir}/
	install -m 755 ${S}/snapshot ${D}${bindir}/
	install -m 755 ${S}/isp/*.so ${D}${libdir}/
}

FILES_{PN} += "${D}/${bindir}/* \
	       ${D}/${libdir}/*.so"

PARALLEL_MAKE = ""

COMPATIBLE_MACHINE = "omap3"
PACKAGE_ARCH = "${MACHINE_ARCH}"

repository: gumstix/meta-gumstix-extras

repo_name: gumstix/meta-gumstix-extras

branch_name: refs/heads/warrior

gha_language: C


text:
package keeper

import (
	"fmt"
	"time"

	sdk "github.com/cosmos/cosmos-sdk/types"

	"github.com/okex/exchain/x/gov/types"
)

var (
	_ ProposalHandlerRouter = (*proposalHandlerRouter)(nil)
)

// ProposalHandlerRouter defines the interface of managing the proposal handler of proposal
type ProposalHandlerRouter interface {
	AddRoute(r string, mp ProposalHandler) (mpr ProposalHandlerRouter)
	HasRoute(r string) bool
	GetRoute(path string) (h ProposalHandler)
	Seal()
}

// ProposalHandler defines the interface handler in different periods of proposal
type ProposalHandler interface {
	GetMinDeposit(ctx sdk.Context, content types.Content) sdk.SysCoins
	GetMaxDepositPeriod(ctx sdk.Context, content types.Content) time.Duration
	GetVotingPeriod(ctx sdk.Context, content types.Content) time.Duration
	CheckMsgSubmitProposal(ctx sdk.Context, msg types.MsgSubmitProposal) sdk.Error
	AfterSubmitProposalHandler(ctx sdk.Context, proposal types.Proposal)
	VoteHandler(ctx sdk.Context, proposal types.Proposal, vote types.Vote) (string, sdk.Error)
	AfterDepositPeriodPassed(ctx sdk.Context, proposal types.Proposal)
	RejectedHandler(ctx sdk.Context, content types.Content)
}

type proposalHandlerRouter struct {
	routes map[string]ProposalHandler
	sealed bool
}

// nolint
func NewProposalHandlerRouter() ProposalHandlerRouter {
	return &proposalHandlerRouter{
		routes: make(map[string]ProposalHandler),
	}
}

// Seal seals the router which prohibits any subsequent route handlers to be
// added. Seal will panic if called more than once.
func (phr *proposalHandlerRouter) Seal() {
	if phr.sealed {
		panic("router already sealed")
	}
	phr.sealed = true
}

// AddRoute adds a governance handler for a given path. It returns the Router
// so AddRoute calls can be linked. It will panic if the router is sealed.
func (phr *proposalHandlerRouter) AddRoute(path string, mp ProposalHandler) ProposalHandlerRouter {
	if phr.sealed {
		panic("router sealed; cannot add route handler")
	}

	if !isAlphaNumeric(path) {
		panic("route expressions can only contain alphanumeric characters")
	}
	if phr.HasRoute(path) {
		panic(fmt.Sprintf("route %s has already been initialized", path))
	}

	phr.routes[path] = mp
	return phr
}

// HasRoute returns true if the router has a path registered or false otherwise.
func (phr *proposalHandlerRouter) HasRoute(path string) bool {
	return phr.routes[path] != nil
}

// GetRoute returns a Handler for a given path.
func (phr *proposalHandlerRouter) GetRoute(path string) ProposalHandler {
	if !phr.HasRoute(path) {
		panic(fmt.Sprintf("route \"%s\" does not exist", path))
	}

	return phr.routes[path]
}

repository: hashfabric/exchain

repo_name: hashfabric/exchain

branch_name: refs/heads/dev


text:
package store

import "sync"

// NewRepositoryStore creates a synchronized store of information.
func NewRepositoryStore() *RepositoryStore {
	return &RepositoryStore{
		repositories: make(map[string]bool),
		lock:         &sync.Mutex{},
	}
}

// RepositoryStore defines a locked structure for easy sharing across goroutine bounds.
type RepositoryStore struct {
	repositories map[string]bool
	lock         *sync.Mutex
}

// Insert appends new entires to the internal storage structure.
func (s *RepositoryStore) Insert(repositories []string) {
	s.lock.Lock()
	defer s.lock.Unlock()

	for _, repository := range repositories {
		s.repositories[repository] = true
	}
}

// Snapshot takes a snapshot of the datastore, returning the repositories it knows about.
func (s *RepositoryStore) Snapshot() []string {
	s.lock.Lock()
	defer s.lock.Unlock()

	repositories := make([]string, 0)

	for key := range s.repositories {
		repositories = append(repositories, key)
	}

	return repositories
}

repository: fossabot/discovery

repo_name: fossabot/discovery


text:
% use `texdoc biblatex` to get help
@www{zjuthesisrules,
    title = {浙江大学本科生毕业论文（设计）编写规则},
    author = {浙江大学本科生院},
    year = {2018},
    url = {http://bksy.zju.edu.cn/attachments/2018-01/01-1517384518-1149149.pdf},
}
@www{tikz,
    title = {tikz宏包},
    author = {Till Tantau},
    year = {2018},
    url = {https://sourceforge.net/projects/pgf/},
}

repository: megrxu/zjuthesis

repo_name: megrxu/zjuthesis


text:
# Enable assembly if we're cross compiling.
if(CMAKE_CROSSCOMPILING)
    enable_language(ASM)
endif()

# Do not prefix the output library file.
set(CMAKE_STATIC_LIBRARY_PREFIX "")

# Set some global path variables.
get_filename_component(__root_dir "${CMAKE_CURRENT_LIST_DIR}/.." ABSOLUTE)
set(AFR_ROOT_DIR ${__root_dir} CACHE INTERNAL "Amazon FreeRTOS source root.")

set(AFR_MODULES_DIR "${AFR_ROOT_DIR}/lib" CACHE INTERNAL "Amazon FreeRTOS modules root.")
set(AFR_DEMOS_DIR "${AFR_ROOT_DIR}/demos/common" CACHE INTERNAL "Amazon FreeRTOS demos root.")
set(AFR_TESTS_DIR "${AFR_ROOT_DIR}/tests/common" CACHE INTERNAL "Amazon FreeRTOS tests root.")
set(AFR_3RDPARTY_DIR "${AFR_MODULES_DIR}/third_party" CACHE INTERNAL "3rdparty libraries root.")

# Set regular version and Git commit version.
set(AFR_VERSION "${PROJECT_VERSION}")
set(AFR_VERSION_VCS "Unknown" CACHE INTERNAL "")
# Check if we're in a Git repository.
find_package(Git)
if(Git_FOUND AND EXISTS "${AFR_ROOT_DIR}/.git")
    execute_process(
        COMMAND "${GIT_EXECUTABLE}" "describe" "--always" WORKING_DIRECTORY "${AFR_ROOT_DIR}"
        OUTPUT_VARIABLE __version OUTPUT_STRIP_TRAILING_WHITESPACE
    )
    set(AFR_VERSION_VCS "${__version}" CACHE INTERNAL "")
endif()

# If we're cross compiling to a board, set "AFR_TOOLCHAIN" to the file name of CMAKE_TOOLCHAIN_FILE,
# otherwise, set it to compiler id in lower case.
if(CMAKE_TOOLCHAIN_FILE)
    get_filename_component(__toolchain "${CMAKE_TOOLCHAIN_FILE}" NAME_WE)
    set(CMAKE_TOOLCHAIN_FILE "${CMAKE_TOOLCHAIN_FILE}" CACHE INTERNAL "")
elseif("${CMAKE_C_COMPILER_ID}" STREQUAL "GNU")
    set(__toolchain "gcc")
else()
    set(__toolchain "${CMAKE_C_COMPILER_ID}")
    string(TOLOWER "${__toolchain}" __toolchain)
endif()
set(AFR_TOOLCHAIN ${__toolchain} CACHE INTERNAL "Toolchain to build Amazon FreeRTOS.")

# Provide an option to enable tests. Also set an helper variable to use in generator expression.
option(AFR_ENABLE_TESTS "Build tests for Amazon FreeRTOS. Requires recompiling whole library." OFF)
if(AFR_ENABLE_TESTS)
    add_compile_definitions(AMAZON_FREERTOS_ENABLE_UNIT_TESTS)
    add_compile_definitions(IOT_BUILD_TESTS=1)
    set(AFR_IS_TESTING 1 CACHE INTERNAL "")
else()
    set(AFR_IS_TESTING 0 CACHE INTERNAL "")
endif()

# Enable debug mode for CMake files
option(AFR_DEBUG_CMAKE "Turn on additional checks and messages.")
mark_as_advanced(AFR_DEBUG_CMAKE)

# Enable metadata mode. This is for internal use only to generate metadata information for a board.
if(NOT CACHE{AFR_METADATA_MODE})
    set(AFR_METADATA_MODE 0 CACHE INTERNAL "Turn off build and generate metadata information.")
endif()

# Import other CMake files.
include("${CMAKE_CURRENT_LIST_DIR}/afr_utils.cmake")
include("${CMAKE_CURRENT_LIST_DIR}/afr_module.cmake")
include("${CMAKE_CURRENT_LIST_DIR}/afr_metadata.cmake")

repository: Tekmarine/amazon-freertos

repo_name: Tekmarine/amazon-freertos


text:
SECTION = "x11/network"
PR = "r1"

PACKAGES = "${PN}-dbg prismstumbler prismstumbler-frontend"
DESCRIPTION = "Prismstumbler wireless LAN scanner"
LICENSE = "GPL"
DEPENDS = "libpcap gtk+ wireless-tools sqlite"

SRC_URI = "${SOURCEFORGE_MIRROR}/prismstumbler/${PN}-${PV}.tar.bz2"

S = "${WORKDIR}/${PN}-${PV}"

inherit autotools pkgconfig

CFLAGS =+ "-I${S}/include"

FILES_${PN} = "${bindir}/prismstumbler"

FILES_prismstumbler-frontend = "${bindir}/psfront ${bindir}/pst \
	                       ${datadir}/applications \
	                       ${datadir}/pixmaps ${docdir}/prismstumbler/help.txt \
                               ${sysconfdir}"

do_configure() {
  cd ${S};
  oe_runconf;
  cd ${S}/src/gpsd;
  rm Makefile;
  rm config.log;
  rm config.cache;
  ${S}/src/gpsd/configure \
                    --build=${BUILD_SYS} \
                    --host=${HOST_SYS} \
                    --target=${TARGET_SYS} \
                    --prefix=${prefix} \
                    --exec_prefix=${exec_prefix} \
                    --bindir=${bindir} \
                    --sbindir=${sbindir} \
                    --libexecdir=${libexecdir} \
                    --datadir=${datadir} \
                    --sysconfdir=${sysconfdir} \
                    --sharedstatedir=${sharedstatedir} \
                    --localstatedir=${localstatedir} \
                    --libdir=${libdir} \
                    --includedir=${includedir} \
                    --oldincludedir=${oldincludedir} \
                    --infodir=${infodir} \
                    --mandir=${mandir} \
                        ${EXTRA_OECONF} \
                    $@;
}

do_install_append() {
  chmod a+s ${D}${bindir}/prismstumbler
}

SRC_URI[md5sum] = "3ef1bf7bfa9a144013155a144aaaa091"
SRC_URI[sha256sum] = "3a568fbb3a68238d79731bcf933602171bb8d7d51226a7af722d357ab7d2a96b"

repository: overo/overo-oe-natty

repo_name: overo/overo-oe-natty

branch_name: HEAD


text:
@misc{https://doi.org/10.48550/arxiv.2004.00436,
  doi = {10.48550/ARXIV.2004.00436},

  url = {https://arxiv.org/abs/2004.00436},

  author = {Abdelkarim, Sherif and Agarwal, Aniket and Achlioptas, Panos and Chen, Jun and Huang, Jiaji and Li, Boyang and Church, Kenneth and Elhoseiny, Mohamed},

  keywords = {Computer Vision and Pattern Recognition (cs.CV), Machine Learning (cs.LG), Machine Learning (stat.ML), FOS: Computer and information sciences, FOS: Computer and information sciences, I.2.10; I.5.0; I.4.0},

  title = {Exploring Long Tail Visual Relationship Recognition with Large Vocabulary},

  publisher = {arXiv},

  year = {2020},

  copyright = {arXiv.org perpetual, non-exclusive license}
}

repository: vlgiitr/academic-kickstart

repo_name: vlgiitr/academic-kickstart


text:
@inproceedings{Heng2017,
    author = {Heng, Olav and T{\o}rdal, Sondre Sanden},
    booktitle = {Computer Graphics International, ENGAGE Workshop},
    mendeley-groups = {PhD/My Publications},
    title = {{Calibration of the Norwegian Motion Laboratory using Conformal Geometric Algebra}},
    year = {2017}
}
@inproceedings{Tørdal2017,
    address = {Aberdeen},
    author = {T{\o}rdal, Sondre Sanden and Pawlus, Witold and Hovland, Geir},
    booktitle = {OCEANS},
    keywords = {leica,motion compensation,real-time,vvmc},
    mendeley-groups = {PhD/My Publications},
    mendeley-tags = {leica,motion compensation,real-time,vvmc},
    publisher = {IEEE},
    title = {{Real-time 6-DOF Vessel-to-Vessel Motion Compensation Using Laser Tracker}},
    year = {2017}
}
@article{Tørdal2017a,
    author = {T{\o}rdal, Sondre Sanden and Hovland, Geir},
    file = {:C$\backslash$:/Users/Sondre/AppData/Local/Mendeley Ltd./Mendeley Desktop/Downloaded/T{\o}rdal, Hovland - 2017 - Relative Vessel Motion Tracking using Sensor Fusion, Aruco Markers, and MRU Sensors.pdf:pdf},
    journal = {Modeling, Identification and Control},
    keywords = {motion compensation,real-time,vvmc},
    mendeley-groups = {PhD/My Publications},
    mendeley-tags = {motion compensation,real-time,vvmc},
    title = {{Relative Vessel Motion Tracking using Sensor Fusion, Aruco Markers, and MRU Sensors}},
    year = {2017}
}
@inproceedings{Tørdal2017b,
    address = {Malta},
    author = {T{\o}rdal, Sondre Sanden and Hovland, Geir},
    booktitle = {25th Mediterranean Conference on Control and Automation},
    keywords = {control,motion compensation,real-time,vvmc},
    mendeley-groups = {PhD/My Publications},
    mendeley-tags = {control,motion compensation,real-time,vvmc},
    publisher = {IEEE},
    title = {{Inverse Kinematic Control of an Industrial Robot used in Vessel-to-Vessel Motion Compensation}},
    year = {2017}
}
@article{Tørdal2016a,
    author = {T{\o}rdal, Sondre Sanden and Hovland, Geir and Tyapin, Ilya},
    doi = {10.1007/s00006-016-0698-2},
    file = {:C$\backslash$:/Users/Sondre/AppData/Local/Mendeley Ltd./Mendeley Desktop/Downloaded/T{\o}rdal, Hovland, Tyapin - 2016 - Efficient Implementation of Inverse Kinemat- ics on a 6-DOF Industrial Robot using Conformal Geometric.pdf:pdf},
    issn = {0188-7009},
    journal = {Advances in Applied Clifford Algebras},
    keywords = {conformal geomet-,industrial robotics,inverse kinematics,motion compensation,ric algebra},
    mendeley-groups = {PhD/Kinematics,PhD/My Publications},
    number = {237896},
    pages = {1--16},
    title = {{Efficient Implementation of Inverse Kinemat- ics on a 6-DOF Industrial Robot using Conformal Geometric Algebra}},
    year = {2016}
}
@article{Tørdal2016b,
    author = {T{\o}rdal, Sondre Sanden and L{\o}vsland, Per-Ove and Hovland, Geir},
    doi = {10.1109/IECON.2016.7793951},
    file = {:C$\backslash$:/Users/Sondre/AppData/Local/Mendeley Ltd./Mendeley Desktop/Downloaded/T{\o}rdal, L{\o}vsland, Hovland - 2016 - Testing of Wireless Sensor Performance in Vessel-to-Vessel Motion Compensation.pdf:pdf},
    isbn = {9781509034741},
    journal = {42st Annual Conference of the IEEE Industrial Electronics Society},
    keywords = {motion compensation,mru,wireless},
    mendeley-groups = {PhD/Motion Compensation,Papers/MED 2017,Papers/OCEANS 2017,Papers/MIC 2017,PhD/My Publications},
    mendeley-tags = {motion compensation,mru,wireless},
    title = {{Testing of Wireless Sensor Performance in Vessel-to-Vessel Motion Compensation}},
    year = {2016}
}

repository: kristianmk/motion-lab

repo_name: kristianmk/motion-lab


text:
#
# Base recipe: meta/recipes-graphics/xorg-lib/libxv_1.0.10.bb
# Base branch: daisy
#

SUMMARY = "Xv: X Video extension library"

DESCRIPTION = "libXv provides an X Window System client interface to the \
X Video extension to the X protocol. The X Video extension allows for \
accelerated drawing of videos.  Hardware adaptors are exposed to \
clients, which may draw in a number of colourspaces, including YUV."

require xorg-lib-common.inc

PR = "${INC_PR}.0"

LICENSE = "MIT-style"
LIC_FILES_CHKSUM = "file://COPYING;md5=827da9afab1f727f2a66574629e0f39c"

DEPENDS += "libxext videoproto"

XORG_PN = "libXv"

# There is no debian patch
DEBIAN_PATCH_TYPE = "nopatch"

repository: nghiaht-tsdv/meta-debian

repo_name: nghiaht-tsdv/meta-debian

branch_name: refs/heads/jethro


text:
CUDA_FULL_VERSION = "10.2.300-1"
require cuda-shared-binaries-${CUDA_FULL_VERSION}.inc

MAINSUM = "31a32e7c7e439bc34331d32b93392d08de6c9893d5083865b93703509d6fb7d6"
MAINSUM:x86-64 = "e408e5fb1bcf3a874e816fe4b9af39baf36cb5bdd031fafcb22f41c9ef542942"
DEVSUM = "c86b549b4501a8ddd451dd7f46ea55b79d548bd987aaa17f3af03813e4b90dba"
DEVSUM:x86-64 = "b0f260ebf1105bd80273a2f88d954866be1f8c6db9b1eddb11b76f01ac274bb8"

BBCLASSEXTEND = "native nativesdk"

repository: danielwangksu/meta-tegra

repo_name: danielwangksu/meta-tegra